Microsoft提供了一个不错的启用COM的DLL,名为GPMGMTlib(GPMC API),用于管理Active Directory中的GPO。该库将导出名为IGPMGPO的接口,该接口表示GPO,并且可以执行各种操作,例如设置权限,导出和导入。

可悲的是,如果我正确理解了reference on MSDN,那么这些接口将无法以编程方式检索当前为GPO设置的设置,因此如果要使用GPMGTMT,我有点不确定。

这是我的问题:


如何以编程方式访问(完全满足只读)域中特定GPO的策略设置?首选使用C#或其他.NET语言的解决方案。


注解:

我需要它来自动比较林中两个域的GPO,它们略有不同。我还尝试将GPO导出到XML报表并使用diff工具,但这是耗时的方法,因为林中大约有十个域,在接下来的几个月中将不得不多次对其进行比较。

最佳答案

您是否知道在Microsoft Desktop Optimization Pack(MDOP)中分发的名为Advanced Group Policy Management(AGPM)的产品?而且它包括管理和比较GPO的功能。



尽管使用了COM对象,但您也有Group Policy Management Console Class Library可以使用程序集,但是我不确定它会更好。

关于c# - 如何以编程方式检索组策略设置?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6774318/

10-09 03:27