欢迎来到知学网! | 帮助中心 分享价值,成长自我!
知学网

sql server 2005 属性IsLocked不可用于登录[sa]

在SQL Server中,权限的分配很重要。特别是在用户数量众多的数据库里面,用户权限,架构的划分经


常会导致权限之间的冲突,导致无法登陆,下面就是一例。


用系统\administrators可以登录,在安全性用户列表中,修改"sa"属性时系统提示: 属性IsLocked不可


用于登录"[sa]。该对像可能没有此属性,也可能是访问权限不足而无法检索。(Microsoft。SqlServer


。Smo),但新建一个dba用户可以登陆,不过要去掉强制实施密码策略,强制密码过期选择才行。 sa 也


不能删除也不能修改属性。 感觉sa就被锁住了一样,查看了一下系统字典表syslogins(select * from 


syslogins)也没有发现什么不同。 最后在SQL Server 2005联机丛书查看帮助,有了一些启发。


在 Windows Server 2003或更高版本环境下运行SQL Server 2005时,可以使用Windows密码策略机制,


特别是目前各地市在做安检和系统策略加固,最容易发生此故障。


SQL Server 2005 可以将Windows Server 2003中使用的复杂性策略和过期策略应用于SQL Server内部使


用的密码。这项功能需要通过NetValidatePasswordPolicy() API实现,该API只在Windows Server 2003


和更高版本中提供。


密码复杂性


密码复杂性策略通过增加可能密码的数量来阻止强力攻击。实施密码复杂性策略时,新密码必须符合以


下原则。


密码不得包含全部或“部分”用户帐户名。部分帐户名是指三个或三个以上两端用“空白”(空格、制表


符、回车符等)或任何以下字符分隔的连续字母数字字符: - _ #


密码长度至少为六个字符。


密码包含以下四类字符中的三类:


?英文大写字母 (A - Z)


?英文小写字母 (a - z)


?十个基本数字 (0 - 9)


?非字母数字(例如:!、$、# 或 %)


密码过期


密码过期策略用于管理密码的使用期限。如果选中了密码过期策略,则系统将提醒用户更改旧密码和帐


户,并禁用过期的密码。


策略实施


密码策略是针对各个登录名实施的。使用 ALTER LOGIN 可以配置策略应用程序。配置密码策略实施时,


适用以下规则。


当 CHECK_POLICY 更改为 ON 时:


?除非将 CHECK_EXPIRATION 显式设置为 OFF,否则也会将其设置为 ON。


?密码历史使用当前的密码哈希值初始化。


当 CHECK_POLICY 更改为 OFF 时:


?CHECK_EXPIRATION 也设置为 OFF。


?清除密码历史。


?lockout_time 的值被重置。


如果指定 MUST_CHANGE,则 CHECK_EXPIRATION 和 CHECK_POLICY 必须设置为 ON。否则,该语句将失败

如果 CHECK_POLICY 设置为 OFF,则 CHECK_EXPIRATION 不能设置为 ON。包含此选项组合的 ALTER 

LOGIN 语句将失败。最后在查询分析器执行以下语句就可以了。


alter login sa with password = 'newpwd' unlock, check_policy = off, check_expiration = 


off完成后,重新启动SQL SERVER服务,即可正常使用sa账户了。


分享到微信 分享到微博 分享到QQ空间

本文标签

关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2846424093

copyright@ 2023-2025 知学网网站版权所有  客服联系电话:19895563303

ICP备案号:苏ICP备2021046181号-1  经营性许可证:苏B2-20230631   苏公网安备:32050602011098号 

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。知学网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知知学网,我们立即给予删除!