Ldap:从子组中检索父组

时间:2013-11-06 19:19:00

标签: c# active-directory

我想问你是否有解决方案从LDAP中的子组中获取父组?我做了一些搜索,我们可以使用像&(objectClass = group)(memberof:1.2.840.113556.1.4.1941:= PATH_TO_GROUP1)这样的过滤器来获取该组的子组,但是我想知道是否有办法从子组中获取父组。

提前谢谢。

1 个答案:

答案 0 :(得分:2)

您需要的只是查询该群组的AD,并获取memberof属性,以获取子群组所属的所有群组。以下应该是你需要的。

// assuming your domain is "my.ad.domain.com"
DirectoryEntry entry = new DirectoryEntry("LDAP://DC=my,DC=ad,DC=domain,DC=com");
// the subgroup you want to find the parents for is "ChildGroup"
DirectorySearcher searcher = new DirectorySearcher(entry, "(&(objectcategory=group)(cn=ChildGroup))", new string[] { "memberof" });
SearchResult result = searcher.FindOne();

// then you can access its groups the usual way
foreach (var group in result.Properties["memberof"])
{
    ...
}