我在使用powershell显示帐户的密码过期之前,我重置它在工作中。 但是我所看到的全球GP是180天,而且有一些员工有90天的账户。 这些其他政策在哪里设置,这样我可以看到他们有什么?
我在powershell中查询msDS-UserPasswordExpiryTimeComputed 。
编辑:我跑gpresult /hc:\temp\gpresult.html ,只能find以下结果
Account Policies/Password Policyhide Policy Setting Winning GPO Enforce password history 24 passwords remembered Default Domain Policy Maximum password age 180 days Default Domain Policy Minimum password age 0 days Default Domain Policy Minimum password length 6 characters Default Domain Policy Password must meet complexity requirements Disabled Default Domain Policy Store passwords using reversible encryption Disabled Default Domain Policy
在具有更严格的密码重置要求的更具体的部署中(例如,仅适用于特定的一组计算机)可能有辅助GPO。
我build议从受影响的机器上运行具有pipe理特权的shell运行gpresult ,以确定哪些GPO已被处理。
从本地命令行到机器: gpresult /hc:\temp\gpresult.html ,然后在浏览器中检查生成的文件gpresult.html 。
你要找的是获得设定密码政策的政策; 在该页面上search“密码策略”和“密码最长使用期限”,查找相关策略,并查看页面右侧对应于已覆盖全局密码的值的“获胜GPO”您在问题中已经注明了适用的政策。
只有一个GPO可以为域设置密码策略,并且必须链接到域。 如果您有多个GPO将密码策略设置为链接到域,那么具有最高优先级(最低链接顺序)的GPO就是获胜的GPO,并且是为该域设置密码策略的GPO。 链接到OU的GPO中的密码策略将不会被应用。 我的猜测是你有细粒度的密码策略。 如果是这种情况,那么您应该看到在Active Directory用户和计算机的System|Password Settings Container下创build的FGPP(您需要查看高级function才能看到此内容)。
从具有Powershell和PowerShell AD GPO模块的计算机上,您可以运行以下命令以查找具有密码设置的所有GPO:
PS C:\temp\gpo> get-gpo -all | foreach { get-gporeport -name $_.displayname -reporttype xml -path ("c:\temp\gpo\" + $_.displayname + ".xml") } PS C:\temp\gpo> gci *.xml | foreach {$_.name; gc $_.name | select-string "password[al]" -context 1 }
这将产生这样的输出,让你看到哪些GPO的密码设置。
somePolicy1.xml somePolicy2.xml somePolicy3.xml Default Domain Policy.xml <q1:Account> > <q1:Name>MaximumPasswordAge</q1:Name> <q1:SettingNumber>30</q1:SettingNumber> <q1:Account> > <q1:Name>MinimumPasswordAge</q1:Name> <q1:SettingNumber>0</q1:SettingNumber> <q1:Account> > <q1:Name>MinimumPasswordLength</q1:Name> <q1:SettingNumber>6</q1:SettingNumber> somePolicy4.xml somePolicy5.xml somePolicy6.xml