Определение, входит ли текущий пользователь в Active Directory (или является действительным пользователем активного каталога) - PullRequest
1 голос
/ 02 апреля 2011

Контекст: надстройка Excel должна проверить, является ли текущий пользователь Windows действительным пользователем активного каталога (и определяет основанную на этом другую логику на основе разрешений)

Я настроил поставщика членства в Active Directory. С пользователем System.Security.Principal.WindowsIdentity я вынимаю имя домена (имя учетной записи пользователя \), а затем использую имя пользователя для проверки sAMAccountName в Active Directory (Membership.GetUser ()).

Это правильный способ проверить, вошел ли текущий пользователь в активную директорию?

У меня сложилось впечатление, что я только проверяю, существует ли имя текущей учетной записи пользователя в активном каталоге, фактически не зная, вошел ли текущий пользователь в активный каталог.

Опять же, я не уверен, что означает "залогинен в активную директорию" ... Я довольно новичок в активной директории!

1 Ответ

1 голос
/ 02 апреля 2011

Возможно, это поможет вам:

Получив WindowsIdentity, вы можете прочитать его свойство User, чтобы получить SecurityIdentifier (SID), который однозначно идентифицирует пользователя.

Если вы хотите определить, существует ли эта учетная запись в хранилище Active Directory, вы можете искать каталог не по имени пользователя, а вместо этого, используя SecurityIdentifier. Таким образом, вам не нужно беспокоиться о смешивания имен пользователей.

Если вместо этого вы хотите определить, в какой домен входит пользователь; Вы можете прочитать свойство AccountDomainSid пользовательского SecurityIdentifier. Это даст вам SecurityIdentifier, который однозначно идентифицирует домен.

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