Получение информации AD внутри проекта mvc3 c # - PullRequest
2 голосов
/ 09 февраля 2012

Я недавно запустил проект, в котором мне нужно аутентифицировать пользователей по Active Directory.

Использование режима аутентификации = "Windows". Мне удалось войти и получить имя пользователя.

@Context.User.Identity.Name

Теперь мне было интересно, как я могу получить GUID от пользователя, который вошел в систему.

Я хочу использовать GUID из активного каталога в моей собственной базе данных, чтобы сделать его членов уникальными.

1 Ответ

2 голосов
/ 09 февраля 2012

Поскольку вы работаете в .NET 3.5 и выше, вам следует проверить пространство имен System.DirectoryServices.AccountManagement (S.DS.AM). Читайте все об этом здесь:

По сути, вы можете определить контекст домена и легко находить пользователей и / или группы в AD:

// set up domain context
PrincipalContext ctx = new PrincipalContext(ContextType.Domain);

// find a user
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, User.Identity.Name);

if(user != null)
{
   // do something here ... like grabbing the GUID
   var userGuid = user.Guid;
}

Новый S.DS.AM позволяет очень легко играть с пользователями и группами в AD:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...