我使用以下代码来提取活动目录组。如何判断用户是否属于xyz组?
// create your domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);
// define a "query-by-example" principal - here, we search for a GroupPrincipal
GroupPrincipal qbeGroup = new GroupPrincipal(ctx);
// create your principal searcher passing in the QBE principal
PrincipalSearcher srch = new PrincipalSearcher(qbeGroup);
// find all matches
foreach(var found in srch.FindAll())
{
// do whatever here - "found" is of type "Principal" - it could be user, group, computer.....
}
答案 0 :(得分:2)
您可以通过查询用户对象上的memberOf
导航属性来获取用户所属的组列表。
了解它here。
https://graph.windows.net/myorganization/users/{user_id}/$links/memberOf?api-version
请注意,您可以删除查询的$links
部分以返回整个组对象,而不是指向该对象的链接。但是,为了简单地验证用户是某个组的成员,您可以使用这些链接,并将返回的组的对象ID与您要查找的组进行比较。