Вход и выход из AD с C#

Как я могу войти в систему без выхода из системы от текущего пользователя к другому пользователю Active Directory с помощью C#. ; 1. Получение доступа нового пользователя. 2. Выполнение моей работы, а затем выход из системы с помощью C# таким же образом.

Например, я являюсь пользователем домена blabla.com. Я вошел в систему как опытный пользователь, но мне нужны права администратора для чего-то, поэтому мне нужно выйти из системы и сменить пользователя на администратора, выполнить свою работу и снова войти в систему с помощью опытного пользователя. это с C#.

Я слышал что-то вроде этого Impersonate User, но я думаю, что это не то, что мне нужно.

Отредактировано: я хочу войти в систему с другим пользователем и получить разрешения этого пользователя без выхода из моего текущего пользователя в С #.

Ответов (2)

Решение

Ваш вопрос не очень ясен. Если вы хотите запрашивать / изменять AD, тогда ответ t4zsan правильный.

Если вам просто нужны группы / разрешения безопасности других пользователей, то вам подойдет олицетворение. Эта статья даст вам хорошую основу .

Предостережения: пользователь, которого вы хотите выдать за другое лицо, должен иметь возможность войти в систему, на которой выполняется код. Вы не можете выдавать себя за пользователя в другом домене, если этот домен не является доверенным. Очевидно, что вы также не можете выдать себя за локального пользователя на другой машине.

При использовании классов в System.DirectoryServices для подключения к AD у вас есть возможность указать учетные данные пользователя. Например, при использовании DirectoryEntry существует перегрузка конструктора, принимающая имя пользователя и пароль, что позволяет вам подключаться как другой пользователь.