2014-03-13 1 views
0

System.DirectoryServices.AccountManagement를 사용하여 사용자가 AD 그룹 내에 있는지 확인하고 싶습니다. 정상적인 경우 user.IsMemberOf (Group)를 사용하여이를 수행 할 수 있습니다. 그러나 그룹이 다른 그룹 (상위 그룹)에 속하면 user.IsMemberOf (상위 그룹)를 사용하면 실패합니다. 그것을 할 수있는 쉬운 방법이 있습니까? 또는 그룹 내 하위 그룹이있는 곳에서 재귀 적으로 드릴 다운해야합니까?그룹 내의 광고 그룹에서 사용자 확인

우리는 그룹 IT를 가지고 있으며, IT 그룹 내에는 Application, Infrastructure, Service Desk가 있습니다. 나는 응용 프로그램 그룹에만 속하며 user.ismemberof (응용 프로그램)을 수행하면 사실이됩니다. 내가 user.ismemberof (IT) 할 경우, 나는 거짓을.

+0

제목을 편집했습니다. "[제목에"태그 "가 포함되어 있어야합니까?] (http://meta.stackexchange.com/questions/19190/)"합의가 "아니오, 그렇지 않아야합니다"로 표시되어야합니다. –

답변

0

검색 할 그룹이 더 이상 없을 때까지 반복적으로 검색을 수행해야합니다. A/D 멤버십 체인을 걸어 갈 수있는 기본 제공 방법이 없습니다. 당신이 UserPrincipal.GetAuthorizationGroups 방법을 사용하는 경우

1

, 당신은 무료로 그것을 얻을 것이다 :

From MSDN :

이 방법은 재귀을 모든 그룹을 검색하고 그룹을 반환하는 사용자에 회원입니다. 반환 된 집합에는 시스템이 사용자를 승인 목적으로 간주하는 추가 그룹이 포함될 수도 있습니다.

관련 문제