在PowerShell
中,我使用以下LDAP query
来检索主机名的活动目录属性:
$Filter = "(&(ObjectCategory=Computer)(ObjectClass=Computer)(CN=$ComputerName))"
if ($Found = ([ADSISEARCHER]$Filter).FindOne()) {
$Details = $Found.GetDirectoryEntry()
}
我有这些属性后,我想检查计算机帐户是否已被禁用。以下LDAP query
允许我这样做:
$Filter = "(&(objectCategory=computer)(userAccountControl:1.2.840.113556.1.4.803:=2)(CN=$ComputerName))"
([ADSISEARCHER]$Filter).FindOne()
我想知道的是,如何避免使用第二个LDAP query
并使用第一个$Details
中的变量LDAP query
来获取$True
或{{ 1}}如果计算机帐户被禁用?
我找到了一些extra information,但我似乎无法把这些碎片放在一起。
感谢您的帮助。
答案 0 :(得分:2)
您要查找的信息在目录条目对象的In [222]: mask = (product.maxrating == 0)
In [223]: product.ix[mask, 'maxrating'] = product.ix[mask, 'maxrating'].map(rating.groupby('sku')['rating'].max())
In [224]: product
Out[224]:
maxrating sku
0 5 1
1 3 2
2 1 3
中进行编码。但是,该属性包含一个带有数值的数组,因此您需要检查"禁用"设置第一个数组元素中的flag(数值2):
userAccountControl