【发布时间】:2013-12-19 09:23:54
【问题描述】:
我必须使用 powershell 从活动目录中的组策略中修改 gPCMachineExtensionNames 属性字符串。为此,我首先要读取现有字符串,修改它并用修改后的替换旧的。
该属性在策略容器中定义如下: CN={POLICY GUID},CN=Policies,CN=System,DC=[DOMAIN],DC=[COM]
当我使用 ADSI Edit 浏览属性时,gPCMachineExtensionNames 的值正确显示为 [{827D319E-6EAC-11D2-A4EA-00C04F79F83A}{803E14A0-B4FB-11D0-A0D0-00A0C90F574B}]
我尝试使用 ldap 查询来挑选值:
'(objectClass=groupPolicyContainer)'
([adsisearcher]'(objectCategory=groupPolicyContainer)').FindAll() | ForEach-Object {
New-Object -TypeName PSCustomObject -Property @{
abc = $_.Properties.gPCMachineExtensionNames -join ''
}
}
但结果是空的。我只能查询name,cn,USNCreated,displayname,..等其他属性。显示正确。为什么不能返回属性 gPCMachineExtensionNames 的值?
我可以进行另一个 LDAP 查询吗?或者是否有其他方法可以查询或修改 Windows Server 2008 R2 上的属性?
感谢您的支持!
【问题讨论】:
标签: powershell ldap ldap-query group-policy adsi