分析:所谓密码复杂性,是指Passfilt.dll 文件实施以下密码策略:
1、密码必须至少包含 6 个字符。
2、密码不能包含您的用户名或您的全名的任何部分。
3、密码必须至少包含下列四类字符中的三类:
说明 示例
-----------------------------------------------------
英文大写字母 A, B, C, ...Z
英文小写字母 a, b, c, ... z
西方阿拉伯数字 0, 1, 2, ... 9
非字母数字特殊字 符标点和其他符号
这些要求被硬编码在Passfilt.dll文件中,且不能通过用户界面或注册表进行更改。如果要更改这些要求,必须编写自己的.dll,并以实施 Windows NT 4.0 Service Pack 2 中提供的 Microsoft 版本相同的方式实施它。
一般情况下,微软不推荐禁止密码复杂性,这样会降低活动目录乃至整个基础架构的安全性。那么该用什么样的密码才符合密码复杂性呢?
其实也很简单,例如 Password! WindowITPro99 等等。但需要把握的一个原则是,不能太复杂。
需要提到的几点:
1、由于密码策略属于域策略,故而一般情况下,是修改Default domain policy。如果修改某个OU的密码策略,那么仅仅会影响该OU下的计算机本地账户,而不会影响到任何域账户。
2、如果在设置域密码策略之前,在用户账户属性中设置了相关的密码选项,那么最终以用户账户属性为准。
3、由于密码策略属于计算机策略,那么更改密码策略后,您可能需要重新启动所有域控制器,才会立刻产生效果。
4、由于密码策略属于计算机策略,那么更改密码策略后,您可能需要重新启动客户端计算机,才会立刻产生效果。
5、和众多写入注册表的策略一样,如果您想禁用密码复杂性,简单的将密码复杂性策略项设置为“未定义”是无效的,必须设置为一个确定的状态,即“禁止”。
刚接触活动目录的朋友们会经常遇到一个问题,特别是在Windows 2003的AD上,那就是刚刚建立一个域后,会发现用户无法变更自己的密码,系统提示“此时无法变更密码”。这是因为默认状态下,域在建立之初为了保障安全性,是存在一个密码最短存留期的,如果需要用户立刻就可以变更自己的密码,那么就需要在密码策略中,将密码最短存留期更改为0