2016-10-20 13 views
0

Я создаю приложение интрасети ASP.NET MVC для своей организации и хочу получить имя пользователя сети. У меня есть следующие в моей Web.configКак сделать проверку подлинности Windows в IIS?

<system.web> 
    <authentication mode="Windows"> </authentication> 
    <authorization> 
     <allow users="*"/> 
     <deny users="?"/> 
    </authorization> 

Когда я отладки с IIS Express, Request.LogonUserIdentity.Name дает свое имя окна.

Однако при развертывании моего приложения в IIS Request.LogonUserIdentity.Name подходит как "NT AUTHORITY\IUSR" вместо имени пользователя Windows.

В IIS для моего приложения я включил только проверку подлинности Windows и отключил другие типы аутентификации.

Какие изменения необходимо внести в IIS, чтобы Request.LogonUserIdentity.Name дал имя пользователя в Windows?

+0

Что произойдет, если вы удалите элемент allow? – Khyron

ответ

-2

Найти руководство от Microsoft в Google, и они расскажут вам, что вы забыли включить проверку подлинности Windows в IIS и отключить анонимную аутентификацию.

+0

Этот ответ не относится к данной информации, указанной в вопросе. – Khyron

+0

@Khyron Знаете ли вы IIS? Просмотр IUSR означает, что включена анонимная аутентификация, и как это может быть не ответом? –

+0

По иронии судьбы, это лучший ответ. – Khyron