上一篇文章我看了如何使用ADSIEdit来配置Windows server 2008活动目录的多元密码策略,那么我们这篇文章就来讨论如何用另外一种方式:LDIFDE来配置多元密码策略。多余的累赘这里就不过多讲解,关于多元密码策略的基础知识,详见 《windows server 2008多元密码策略三部曲(一):ADSIEdit篇》。 

首先,我们在使用LDIFDE工具创建PSO前,应该来了解一下什么是“负PSO 属性值”这个概念。从《windows server 2008多元密码策略三部曲(一):ADSIEdit篇》我们知道使用 ADSI Edit 创建密码设置对象 (PSO) 时,是以 dd:hh:mm:ss 格式输入四个与时间相关的 PSO 属性(msDS-MaximumPasswordAge、msDS-MinimumPasswordAge、msDS-LockoutObservationWindow 和 msDS-LockoutDuration)的值。而在这篇文章中使用 ldifde 命令创建 PSO 时,则必须以 I8 格式输入这些属性的值,这种格式以 -100 毫微秒的间隔存储时间。Windows Server 2003“默认域策略”将此确切的时间单位用于其相应的时间相关属性。若要将这些属性设置为适当的值,请将以分钟、小时或天为单位的时间值转换为以 100 毫微秒为间隔的时间值,然后在所得到的值前面加个负号。

例如:
1分钟换算成I8值为:-60*(10^7) = - 600000000
1小时换算成I8值为:-60*60* (10^7) = -36000000000
1天换算成I8值为:-24*60*60*(10^7) = -864000000000
例如,如果我们希望将 msDS-MaximumPasswordAge 设置为 10 天,则用 -864000000000 乘以 10,并将得到的 I8 值应用到 msDS-MaximumPasswordAge 属性。如果我们希望将 msDS-LockoutDuration 设置为 30 分钟,则用 -600000000 乘以 30 以得到相应的I8 值。

OK,基本注意事项我就介绍到这里,事先的准备工作和ADSIEdit创建是一样的,包括用户,组,域功能级别等注意事项。这里就不再累赘。

我们最主要要做的就是编写一个LDIFDE文件。
通过将以下示例代码保存为一个文件(例如,PSOtest.ldf),来创建一个新 PSO 的设置:
dn:CN=PSOtest,CN=Password Settings Container,CN=System,DC=conanhan,DC=com
changetype: add
objectClass:msDS-PasswordSettings
msDS-MaximumPasswordAge:-12096000000000
(密码最长可以使用14天)
msDS-MinimumPasswordAge:-0
(密码最短必须使用0天,即可以立即更改密码)
msDS-MinimumPasswordLength:16
(密码最小长度为16个字符)
msDS-PasswordHistoryLength:3
(密码不能和过去的3个重复)
msDS-PasswordComplexityEnabled:TRUE
(启用密码复杂性要求)
msDS-PasswordReversibleEncryptionEnabled:FALSE
(启用用户密码不可还原加密)
msDS-LockoutObservationWindow:-18000000000
(账号锁定窗口时间30分钟)
msDS-LockoutDuration:-18000000000
(账号锁定观察窗口时间30分钟)
msDS-LockoutThreshold:3
(输入错误密码3次就锁定)
msDS-PasswordSettingsPrecedence:1
(该PSO的优先级)
msDS-PSOAppliesTo:CN=PSOtestgroup,DC=conanhan,DC=com
(GPO应用对象)
attachimg.gif 1.jpg
下载 (61.06 KB)
2008-12-25 22:59


注意:请确保不要在每行文本后有多余的空格。



打开命令提示符,键入以下命令
ldifde –i –f PSOtest.ldf导入文件。
attachimg.gif 2.jpg
下载 (49.86 KB)
2008-12-25 22:59


然后我们将 PSO 应用到用户和/或全局安全组在刚刚定义的文件PSOtest.ldf中,有一个字段msDS-PSOAppliesTo:CN=PSOtestgroup,DC=conanhan,DC=com就表示将该PSO链接到具体的对象。如果想更改链接,可以将以下示例代码复制到一个文件(例如,ModifyAppliesTo.ldf)中,来指定你希望将什么PSO应用到哪些用户或全局安全组。

dn:CN=PSOtest,CN=Password Settings Container,CN=System,DC=conanhan,dc=com
changetype:modify
replace:msDS-PSOAppliesTo
msDS-PSOAppliesTo:CN=PSOtestgroup,DC=conanhan,DC=com
-
attachimg.gif 3.jpg
下载 (49.92 KB)
2008-12-25 22:59


注:
文件中代码的最后一行中的连字符是必需的。用来表述输入终止。此外,DN字段中不要有中文,LDIFDE不支持中文。


打开命令提示符,输入
ldifde –i –f ModifyAppliesTo.ldf 导入文件
attachimg.gif 4.jpg
下载 (67.55 KB)
2008-12-25 22:59



OK  最后测试一下效果,应用成功(详细应用详见第一篇)
attachimg.gif 5.jpg
下载 (44.02 KB)
2008-12-25 22:59


在这篇文章中,我向大家演示了如何通过ldifde工具来管理多元密码策略。由于很多操作在GUI界面中更具备便捷性,所以我就没有进行过多的演示。在下一篇文章中,我将向大家阐述如何使用Quese公司出品的针对AD的PowerShell来实现、管理多元密码策略。