#iis #windows-authentication
#iis #windows-проверка подлинности
Вопрос:
Я получаю запрос на получение учетных данных на веб-сайте в IIS 8.5, работающем в Windows 2012, который я не могу объяснить.
Пул приложений работает под пользовательским идентификатором, который является членом администраторов и IIS_IUSRS на сервере.
На веб-сайте у меня есть следующие настройки:
Anonymous Authentication = Disabled
ASP.NET Impersonation = Enabled
Windows Authentication = Enabled
useAppPoolCredentials = True
Мой web.config имеет:
<authentication mode="Windows" />
<identity impersonate="true" />
<authorization>
<allow users="*" />
</authorization>
Я исключил безопасность папок, временно предоставив полный контроль всем.
По-настоящему странно то, что у меня такой же пул приложений, веб-сайт и настройка папок на другом узле в моем кластере NLB, и он не запрашивает учетные данные.
Я также сравнил файлы applicationHost.config между двумя серверами и не обнаружил каких-либо существенных различий.
Где еще может быть разница между двумя серверами?
Обновление из вопросов в комментариях:
Код состояния HTTP: 401.2.5. FailedReqLog:
<failedRequest url="http://url-myapp.com:80/"
siteId="4"
appPoolId="myapp"
processId="14368"
verb="GET"
authenticationType="NOT_AVAILABLE"
activityId="{8000002B-000E-FF00-B63F-84710C7967BB}"
failureReason="STATUS_CODE"
statusCode="401.2"
triggerStatusCode="401.2"
timeTaken="0"
xmlns:freb="http://schemas.microsoft.com/win/2006/06/iis/freb"
>
- AppPool находится в интегрированном режиме
- Это позволяет после ввода учетных данных
Комментарии:
1. Ваш пользовательский идентификатор не должен быть членом IIS_IUSRS (он получает это по умолчанию), у него также не должно быть прав администратора, если только это не абсолютно необходимо. Что касается того, что нужно проверить, является ли сайт частью зоны интрасети и SPN для имени хоста. Вы не упоминаете: позволяет ли он вам входить на сервер после запроса? Какую ОС / браузер вы используете для подключения.
2. Прежде чем углубляться слишком глубоко, изучите статус / вспомогательный статус, который вызывает запрос, из файлов журнала IIS, support.microsoft.com/en-ca/help/943891/… Только тогда есть что обсудить.
3. вы перепроверили режим управляемого конвейера? оба находятся в классическом или интегрированном режиме? поскольку для олицетворения установлено значение true, предполагается, что как в классическом режиме, так и в этом случае вы не можете отключить проверку подлинности Windows в приведенном выше решении?