如果 PowerShell 无法执行此操作,是否有人知道如何通过 PowerShell 或其他方式从 Windows 2003 域获取 GPO(组策略对象)列表?
我知道 Server 2008 有一些用于组策略的 cmdlet,但是如何对 Windows 2003 域执行此操作?
在 Google 上搜索过,但没有结果。
谢谢
加里
答案1
尝试 SDM 软件的组策略 cmdletSDM GPMC PowerShell 命令 1.3
答案2
您可以使用 GPMC API 获取所有 GPO 的列表:
$gpm = New-Object -ComObject GPMgmt.GPM
$constants = $gpm.GetConstants()
$domain = $env:USERDOMAIN
$gpmDomain =$gpm.GetDomain($domain ,"", $constants.UseAnyDC)
$gpmSearch = $gpm.CreateSearchCriteria()
$gpmDomain.SearchGPOs($gpmSearch)
答案3
最后我选择了这个,使用了 GPOINFO 工具。虽然不太好用,但满足了我们的需要:-
写入主机“计算 GPO” $dom=[System.DirectoryServices.ActiveDirectory.Domain]::获取计算机域() $PDC=$dom.PdcRoleOwner gpotool.exe /dc:$PDC > GPOToolRep.txt $GCReport=获取内容-路径 GPOToolRep.txt $TextOut+="$($GCReport[4])`n
感谢大家的回复....Gary