Определите, в какую группу пользователей домена входит пользователь Windows с VB.NET - PullRequest
0 голосов
/ 10 сентября 2009

Я знаю, что использование Dim currUser As String = Request.ServerVariables ("LOGON_USER") возвращает домен \ имя пользователя, но я хочу знать, в какую группу входит этот пользователь в Active Directory.

Ответы [ 2 ]

3 голосов
/ 10 сентября 2009

Хотите список групп? Или вы хотите проверить, является ли пользователь членом определенной группы?

Если последнее, вы можете использовать WindowsPrincipal.IsInRole (), чтобы проверить, принадлежит ли пользователь определенной группе:

http://msdn.microsoft.com/en-us/library/fs485fwh.aspx

Например, если вы хотите проверить, является ли пользователь администратором, вы можете использовать:

If Page.User.IsInRole("BUILTIN\Administrators") Then
    ' Do something
End If
2 голосов
/ 10 сентября 2009

Вы можете использовать Метод UserPrincipal.GetAuthorizationGroups

imports System.DirectoryServices.AccountManagement
dim name as string = Request.ServerVariables("LOGON_USER") 
dim user As UserPrincipal = UserPrincipal.FindByIdentity( new PrincipalContext( ContextType.Domain ), name)
dim groups As PrincipalSearchResult(Of Principal)= user.GetAuthorizationGroups()
...