SQL2005账号SA属性打不开无法修改密码

打开企业资源管理器找到SA账户,结果打不开属性 如下图:



在互联网找到解决方法如下:

用windows域用户登录,执行这一句:

alter login sa with password = 'newpwd' unlock, check_policy = off, check_expiration = off
再打开属性即可修改密码。


================================================

原因:

用系统\administrators可以登录在安全性用户列表中,修改sa属性时系统提示: 属性IsLocked不可用于登录"[sa].该对像可能没有此属性,也可能是访问权限不足而无法检索.(Microsoft.SqlServer.Smo)。但新建一个dba用户可以登陆不过要去掉强制实施密码策略强制密码过期选择才行。 sa 也不能删除也不能修改属性。 感觉sa就被锁住了一样查看了一下系统字典表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 语句将失败。

发布了518 篇原创文章 · 获赞 97 · 访问量 182万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览