У меня возникла та же проблема, и она была решена путем изменения удостоверения пула приложений пула приложений, в котором выполняется веб-приложение, на NetworkService

я есть приложение .NET 3.5, работающее под IIS 7 на сервере Windows 2003, и я не могу работать с интегрированной аутентификацией Windows, так как я продолжаю получать запрос на вход в систему. Я установил включенную проверку подлинности Windows в IIS, а все остальные типы безопасности отключены, а проверка подлинности / авторизация файла web.config моего приложения настроена следующим образом:

<system.web>
    <compilation debug="true" strict="false" explicit="true" targetFramework="3.5" />
    <authenticationmode="Windows"/>
    <authorization>
    <deny users = "?" />
    </authorization>
</system.web>

С этой настройкой я ожидаю за сценой проверки пользователя Windows, чтобы разрешить доступ и запретить анонимным пользователям. Тем не менее, я получаю всплывающее окно входа в Windows, когда я пытаюсь получить доступ к сайту.

Я устранял эту проблему в течение нескольких дней и не могу понять проблему. Основываясь на сообщениях со схожими проблемами, я подтвердил, что мой URL-адрес не содержит периодов, дважды проверил, что в моих настройках IE установлено значение «Включить встроенную проверку подлинности Windows», а также добавил свой URL-адрес на свои сайты в интрасети, но все еще получал всплывающее окно.

Чтобы устранить эту проблему в дальнейшем, я включил анонимную аутентификацию в IIS и изменил свой файл web.config, к которому я могу подключиться, а затем добавил Response.Write (System.Security.Principal.WindowsIdentifity.getcurrent (). User.name.toString () ), чтобы попытаться увидеть, какой пользователь используется в аутентификации. В результате я получаю IIS APPPOOL \ myapp, который, очевидно, является пулом приложений IIS для моего приложения.

Я действительно ценю любую помощь, которую кто-либо может предоставить, так что я все еще использую только проверку подлинности Windows, но не получаю всплывающее окно, и проверка подлинности Windows выполняется против фактического пользователя Windows.

Благодарю.

Дополнительное примечание после устранения неполадок далее:

Просто заметил, что при сбое входа в систему и появлении приглашения на вход в систему Windows снова отображается имя пользователя, которое попыталось войти в систему под именем «SERVERNAME» \ «USERNAME», что заставило меня поверить, что оно пытается проверить пользователя на сервере по сравнению с домен. Чтобы подтвердить это, я создал учетную запись локального пользователя непосредственно на сервере приложений с тем же именем пользователя и паролем, что и у пользователя сетевого домена, и попытался снова войти в систему. В результате я снова получил приглашение войти в систему, но когда на этот раз я ввел имя пользователя и пароль, я смог успешно войти в систему. Пользователь сети и сервер приложений находятся в одном домене, поэтому на самом деле не уверены, почему проверка подлинности IIS указывает на локальные учетные записи сервера приложений, а не на учетные записи домена. Я понимаю, что на данный момент это вопрос IIS, поэтому я также публикую сообщения на forums.iis.net, но буду признателен за любые советы, которые кто-либо мог получить с тех пор, как устранял это в течение нескольких дней.

Ответы на вопрос(21)

Ваш ответ на вопрос