IIS 7.5 Запрос учетных данных при использовании аутентификации Windows после перезагрузки сервера - PullRequest
0 голосов
/ 21 апреля 2020

Windows Server 2008 R2, IIS 7.5, реализующий Windows Аутентификацию на сайте по умолчанию и несколько десятков классических c ASP & asp. NET приложений на локальном интр anet сайте. Любой пользователь, который получает доступ к сайту, уже будет аутентифицированным пользователем в домене. Серверная переменная AUTH_USER будет использоваться для запроса таблицы SQL для приложений, к которым пользователь может получить доступ.

Настройки уровня сервера (аутентификация):

  • Расширенная защита отключена
  • Включить аутентификацию в режиме ядра - проверено
  • Поставщики - NTLM, затем согласовать
  • Анонимные формы и олицетворение ОТКЛЮЧЕНО

Настройки сайта (аутентификация):

  • То же, что и выше

Пулы приложений

  • DefaultAppPool. NET Framework v2.0 Интегрированная идентификация NetworkService
  • Classi c. NET AppPool. NET Framework v2.0 Классическая идентификация ApplicationPoolIdentity
  • ASP. NET v4.0 Classi c. NET Framework v4.0 Классический идентификатор ApplicationPoolIdentity
  • ASP. NET v4.0 32Bit. NET Framework v4. 0 Интегрированная идентификация ApplicationPoolIdentity
  • ASP. NET v4.0. NET Framework v4.0 Интегрированная идентификация ApplicationPoolIdentity

Желаемое поведение - пользователь открывает веб-сайт, не запрашивается для имени пользователя и пароля и автоматически проверил и показал меню, соответствующее их идентификатору. Отображаются гиперссылки на другие приложения в том же экземпляре IIS. Пользователь нажимает гиперссылку и попадает в приложение без запроса Windows имени пользователя и пароля.

Что происходит - когда сервер IIS перезагружается, при первом входе пользователя на сайт ему предлагается Windows имя пользователя и пароль. Если информация введена (или нажата кнопка отмены), меню все равно отображается. Последующие приложения также запрашивают имя пользователя и пароль при первом обращении к ним после перезагрузки, и если пользователь нажимает кнопку отмены (или вводит данные для входа в систему), они переносятся в это приложение. Последующий доступ к тем же сайтам у пользователя больше не запрашивается. Однако, когда сервер перезагружается, пользователям предлагается, как описано выше.

В файле журнала W3SV C первый результат - 401,1 -2146893042, второй результат - 401.2.5.

Я уверен, что обязательно должен быть параметр конфигурации IIS, разрешения, кэш и т. Д. c. или какой-то другой твик, который упускается из виду. Когда к сайту обращаются (IE 11), AUTH_USER является правильным, и список приложений для пользователя также корректен.

Почему он запрашивает имя пользователя и пароль и делает это только после перезагрузки веб-сервера? И почему при нажатии кнопки ОТМЕНА в командной строке также отображается меню?

1 Ответ

0 голосов
/ 24 апреля 2020

Когда мы сталкиваемся с подобной проблемой. мы можем просмотреть код status.sub-status и win32-status. сообщение об ошибке -2146893042 показывает, что сервер IIS не получил никаких учетных данных пользователя. Я сталкивался с этой проблемой раньше. Это может произойти, когда NTLM имеет более высокий приоритет, чем kerberos.

Чтобы решить эту проблему, сначала установите поставщика переговоров.

enter image description here

...