我正在尝试使用 C# 收集 AD 中 OU 中的所有服务器对象,但我没有成功。
我尝试像这样访问 OU:
var context = new PrincipalContext(ContextType.Domain, "NO", "OU=Servers");
这个对吗?
我试着用这个分组:
var groupPrincipal = new GroupPrincipal(context, "*");
但这会引发错误。
访问 OU 中的对象的正确方法是什么?
我正在尝试使用 C# 收集 AD 中 OU 中的所有服务器对象,但我没有成功。
我尝试像这样访问 OU:
var context = new PrincipalContext(ContextType.Domain, "NO", "OU=Servers");
这个对吗?
我试着用这个分组:
var groupPrincipal = new GroupPrincipal(context, "*");
但这会引发错误。
访问 OU 中的对象的正确方法是什么?
我发现了问题。Servers OU 中没有任何组。只有更多的 OU 基于 Windows Server 版本。因此,要访问 OU 中的服务器,我必须像这样引用嵌套的 OU:OU=2012,OU=Servers。
我还不得不放弃 GroupPrincipal。
为了访问服务器,我使用了http://www.codeproject.com/Articles/18102/Howto-Almost-Everything-In-Active-Directory-via-C#19中的“枚举 OU 中的对象”中的代码