C# 目录服务:如何在 AD 中获取组的子组
C# Directory Service: How to get sub groups of groups in AD
如何使用目录服务从群组中获取子群组。
假设我在 AD 中有以下组:
Master Group
Group 1
Group 2
我想获取属于主组的所有组。所以在我的例子中,我想得到一个包含 Group 1 和 Group 2
的列表
这是我的部分代码:
using (var ctx = new PrincipalContext(ContextType.Domain, "myDomain.COM"))
{
var group = GroupPrincipal.FindByIdentity(ctx, "Master Group");
var results = group.Group();// returns nothing
}
GroupPrincipal
中没有Group(bool)
方法。
我猜你指的是 GetMembers(bool) 方法?
当 true
传递给 GetMembers
时,将跳过所有子组(它 returns 仅叶对象,如用户或计算机)。
您可以改为传递 false
并过滤掉所有非群组成员。但这意味着您只能获得直接成员组,并且需要有一些方法来获得所有嵌套成员组(例如递归方法)。
如何使用目录服务从群组中获取子群组。
假设我在 AD 中有以下组:
Master Group
Group 1
Group 2
我想获取属于主组的所有组。所以在我的例子中,我想得到一个包含 Group 1 和 Group 2
的列表这是我的部分代码:
using (var ctx = new PrincipalContext(ContextType.Domain, "myDomain.COM"))
{
var group = GroupPrincipal.FindByIdentity(ctx, "Master Group");
var results = group.Group();// returns nothing
}
GroupPrincipal
中没有Group(bool)
方法。
我猜你指的是 GetMembers(bool) 方法?
当 true
传递给 GetMembers
时,将跳过所有子组(它 returns 仅叶对象,如用户或计算机)。
您可以改为传递 false
并过滤掉所有非群组成员。但这意味着您只能获得直接成员组,并且需要有一些方法来获得所有嵌套成员组(例如递归方法)。