我正在尝试导出特定 AD 组的成员。我有一个可行的解决方案来获取 ALL 并进行过滤,但如果我想要的组有 1000 个可能的用户中的 5 个,这似乎有点过分了。
我正在朝这个方向努力:
public void PrintMembers(string groupname, string domain)
{
GroupPrincipal group = GroupPrincipal.FindByIdentity(new PrincipalContext(ContextType.Domain, domain), groupname);
foreach (Principal princ in group.Members)
{
if (princ.StructuralObjectClass == "user")
{
Response.Write(UserPrincipal.FindByIdentity(new PrincipalContext(ContextType.Domain, domain), princ.Name));
}
}
}
这种工作,但未能给予通过基础组继承成员资格的成员。
所以:“特定组 1”= 我让所有 5 个成员都好
“特定组 2” = 我得到了所有 7 名成员
“母亲组”,包含上面的两个组=我没有成员......
我可以迭代分组子组,但觉得必须有另一种方式......
有什么建议么?