我目前正在 Windows 7 中查看此功能,但我想它在许多其他 Windows 操作系统版本中非常相似,甚至完全相同。
我正在寻找有关 Windows 密码复杂性要求的确切规则的解释。我指的是以下位置可用的设置:
Control Panel > Administrative Tools > Local Security Policy >> Account Policies > Password Policy > "Password must meet complexity requirement"
如果您打开此选项的属性并选择“Expain”选项卡,它会提供以下规则列表:
密码必须符合复杂性要求
此安全设置决定密码是否必须满足复杂性要求。
如果启用此策略,密码必须满足以下最低要求:
不包含用户账户名或用户全名中超过两个连续字符的部分
长度至少为 6 个字符
包含以下四个类别中的三个类别的字符:
英文大写字符(A 至 Z)
英文小写字符(a 至 z)
十进制数字(0 至 9)
非字母字符(例如 !、$、#、%)
为了提供完整的答案,请随意详细解释每条规则,但我个人只对以下摘录的解释感兴趣:
不包含用户账户名或用户全名中超过两个连续字符的部分
这到底是什么意思?查看一些通过和未通过此规则检查的密码示例将非常有用。
答案1
如果帐户名长度少于三个字符,则不会执行此检查,因为密码被拒绝的概率太高。
当根据用户的全名进行检查时,几个字符将被视为将姓名分隔为各个标记的分隔符:逗号、句点、破折号/连字符、下划线、空格、磅号和制表符。
对于每个长度为三个或三个以上的字符的标记,都会在密码中搜索该标记;如果存在,则拒绝密码更改。
例如,名称
"Joey M. Williams"
将被拆分为三个标记:
Joey
,M
和Williams
由于第二个标记只有一个字符长,因此将被忽略。因此,此用户的密码不能包含“Joey”或“Williams”作为子字符串。
所有这些检查都不区分大小写。
笔记:需要澄清的是,该two consecutive characters
限制适用于字符串的拆分,而不是密码复杂性。
例如"Joey M. Williams"
可以使用JoeP@$$w0rd
但不能JoeyP@$$w0rd