Получить в настоящее время вошедшего в систему пользователя Active Directory с веб-страницы C # (в том числе IIS) - PullRequest
3 голосов
/ 21 июля 2011

Мы создаем интрасеть для клиента, клиент не хочет, чтобы пользователи входили в систему, поскольку они уже вошли в домен (Active Directory)

Но они хотят знать ADимя пользователя каждого пользователя, так что, если они публикуют в блоге, их личность может быть записана.

До сих пор мы думали, что наш файл web.config должен сказать:

<identity impersonate="false" />

так что каждый пользователь просматривает сайт интрасети как сам, а не как пользователь пула приложений, настроенный в IIS.

Будет ли это правильным способом?

Если да, то какую аутентификацию IIS нам следует использовать?ПРИМЕЧАНИЕ: мы не аутентифицируем пользователя, поэтому нам не нужна подсказка для входа в систему, все пользователи уже вошли в домен, мы просто хотим увидеть их имя пользователя.

Возможно ли это вообще?И мы на правильном пути?

В C # мы можем получить имя пользователя следующим образом:

System.Web.HttpContext.Current.Request.LogonUserIdentity.Name.ToString()

, но мы просто не можем найти параметр проверки подлинности IIS, который не будет запрашиватьлогин домена / сети.

Ответы [ 2 ]

1 голос
/ 21 июля 2011

Вам необходимо включить проверку подлинности Windows.После того, как вы это сделали, токен идентификации будет передан на сервер, насколько я помню, и вы можете управлять аутентификацией с этим.Также обратите внимание, что только Chrome и IE поддерживают это полностью, Firefox попросит, по крайней мере, нажать кнопку «ОК» перед аутентификацией пользователя.Следует также отметить, что в браузере правильно установлены уровни доверия, иначе автоматическая аутентификация не будет выполняться.

0 голосов
/ 21 июля 2011

Вы уже знаете, как получить LogonUserIdentity и правильно настроить IIS.Чего не хватает, так это заставить браузер автоматически аутентифицироваться с учетной записью AD пользователя.Чтобы включить это, необходимо настроить браузер, что, по-моему, включено по умолчанию только для сайтов зоны интрасети.

...