Самое Странное поведение аутентификации Windows IIS

У меня есть веб-сайт ASP.NET, работающий на Windows Server R2 в корпоративной сети, с помощью аутентификации Windows.

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

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

Я не могу выяснить, почему эта ошибка происходит и попробовала много способов зафиксировать его без удачи. Я думаю, что это очень странно. Однако наконец я нашел способ решить эту проблему, это - самая странная часть проблемы: Я редактирую "Физический путь" в "Основных Настройках" веб-сайта, я просто указываю на него на другой здоровый веб-сайт, например, %SystemDrive %\inetpub\wwwroot, затем я пытаюсь просмотреть веб-сайт, очень хороший, он работает хорошо и отображает страницу по умолчанию (iisstart.htm). Похоже, что это не очень полезно, но затем я возвращаю физический путь к своему веб-сайту; внезапно все подходит - работы аутентификации Windows! Я не знаю, почему это помогает, но я доволен этим результатом - это решает мою проблему, хотя я не знаю, какого черта происходит.

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

Мне не нравится это! Мне не нравится делать этот глупый прием каждый раз сброс IIS или перезапуски сервера.

Есть ли кто-либо, у кого есть некоторые идеи о том, почему аутентификация Windows перестала работать, и почему вышеупомянутый прием может зафиксировать ее, и почему после того, как IIS сбросил ее сбои снова?

21
задан ErikE 24 April 2013 в 22:17
поделиться

1 ответ

Я только что обнаружил, что это вызвано страницами с ошибками custom 401 в разделе «Страницы ошибок». Я установил его для выполнения URL-адреса, когда код состояния 401 в моем web.config, это выглядит так:

 <httpErrors errorMode="Custom">
 <remove statusCode="401" subStatusCode="-1"/>
    <error statusCode="401" path="/Error/AccessDenied" responseMode="ExecuteURL"/>
 </httpErrors>

Затем каждый раз, когда я сбрасываю IIS и пытаюсь получить доступ к этому веб-сайту, возникает проблема. Если я удалю его в Web.Config или удалю из консоли IIS, проблема исчезнет, ​​что более забавно, это еще один эксперимент: после того, как я удалил эти настройки и успешно открыл веб-сайт, я добавил этот параметр обратно. Все работает очень хорошо. Каждый пользователь домена может получить доступ к этому сайту, те, кому не удалось пройти авторизацию, получают страницу с ошибкой клиента.

Итак, мое решение теперь состоит в том, что я удалил этот параметр в моем Web.Config, каждый раз, когда я сбрасываю IIS или перезапускаю сервер, администратору сервера нужно сначала заходить на веб-сайт, а затем добавлять эту страницу с ошибкой клиента в консоль IIS.

Я считаю, что это ошибка II7.5 в Windows Server 2008 R2.

6
ответ дан 29 November 2019 в 21:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: