根据this SQL Server 2008 whitepaper,SQL Server只应在启用Check_Expiration(强制密码过期)选项时注意最小密码年龄策略。白皮书中的第7页专门说“CHECK_EXPIRATION使用Windows Server 2003策略的最小和最大密码期限部分,而CHECK_POLICY使用其他策略设置”。然而,这不是我所发现的。看起来您只需要打开Check_Policy(强制密码策略)。
例如,我启用了SQL登录(使用SQL Server身份验证),并启用了“强制密码策略”,但“强制密码过期”已关闭。我的域名密码策略的最小密码年龄设置为1.我可以使用sp_password更改密码一次,但是当我尝试第二次更改密码时,我收到此错误:
服务器:消息15114,级别16,状态1,行1 密码验证失败。用户的密码太新了,无法更改。
本白皮书中的文档是否完全错误?当Check_Expiration关闭时,为什么会发生这种情况?我还发现this site也表示只有在Check_Expiration打开时才会强制执行Minimum Password Age。我认为MAXIMUM密码时代也是如此,但我发现当Check_Expiration关闭时,最小密码年龄仍在强制执行。
我的配置有什么问题吗?当Check_Expiration关闭(但Check_Policy打开)时,是否应该实施Minimum Password Age?