我正在尝试列出所有设置了PasswordNeverExpires
标志的用户。
如果我使用
Get-ADUser
我会获得域中所有用户的列表,以及一系列默认属性。
如果我使用
Get-ADUser -Filter * -Properties Name | Format-Table -Property Name -AutoSize
我还获得了表中域中所有用户名的列表。
当我使用
Get-ADUser -Filter * -Properties Name,PasswordNeverExpires | Format-Table -Property Name,PasswordNeverExpire
我得到一个包含用户名完整列表的表,但是只有以下帐户的True
列中有False
或PasswordNeverExpires
Guest
krbtgt
Administrator
SBSMonAcct
Network Administrator
<MyDomainAdminAccount>
SPSearch
<AnAdministratorAccountForOneOfOurSoftwareVendors>
<AnAccountThatWasCopiedFromTheDomainAdministratorAccount>
<AnotherAccountCopiedFromTheDomainAdministratorAccount>
表中的所有其他项目/用户名都具有空/空白/不存在的值。
我也尝试过
Get-ADUser -LDAPFilter "(&(!userAccountControl:1.2.840.113556.1.4.803:=2)(userAccountControl:1.2.840.113556.1.4.803:=65536))"
但这只会返回
<MyDomainAdminAccount>
SPSearch
为什么没有为所有用户选择PasswordNeverExpires
标志?谢谢。
答案 0 :(得分:1)
PasswordNeverExpires
是根据userAccountControl
属性计算的。
搜索设置了该标志的用户的最快方法如下:
Get-ADUser -LDAPFilter "(userAccountControl:1.2.840.113556.1.4.803:=65536)" -Properties PasswordNeverExpires
有关使用按位过滤器进行搜索的更多信息,请参见the documentation。 65536(0x10000)对应于ADS_UF_DONT_EXPIRE_PASSWD
位的位置,因此此LDAP搜索过滤器仅搜索设置了该标志的帐户。
答案 1 :(得分:0)
嗯,您的第三行拉出属性“ PasswordNeverExpires”,但选择“ PasswordNeverExpire”。如果这只是您输入中的错字,请忽略。如果没有,那就是你的答案。 :-)