Я понимаю, что этот пост довольно старый, но я подумал, что могу обновить его с помощью процессов, которые я использую.(ASP.Net 4.0, VB)
При использовании встроенной защиты Windows в домене.
Page.User.IsInRole("domain\GroupName")
проверит, является ли аутентифицированный пользователь членом указанной группы.
Если вы хотите проверить членство в группе других пользователей, кроме аутентифицированного пользователя.
Два этапа проверки нескольких групп с одним и тем же пользователем:
Dim MyPrincipal As New System.Security.Principal.WindowsPrincipal _
(New System.Security.Principal.WindowsIdentity("UserID"))
Dim blnValid1 As Boolean = MyPrincipal.IsInRole("domain\GroupName")
Одиночныйэтап для проверки в отдельной группе:
Dim blnValid2 As Boolean = New System.Security.Principal.WindowsPrincipal _
(New System.Security.Principal.WindowsIdentity("userID")).IsInRole("domain\GroupName")
ПРИМЕЧАНИЕ :: Метод IsInRole работает с вложенными группами.Если у вас есть группа верхнего уровня с подгруппой, которая является участником, а пользователь является членом подгруппы.