Назад | Перейти на главную страницу

Маршрутизация запросов приложений Microsoft с проверкой подлинности Windows

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

Проблема, с которой я сталкиваюсь, заключается в том, что только некоторые запросы аутентифицируются, в то время как другие завершаются с ошибкой 401. Я следил за Особый случай запуска IIS 7.0 на веб-ферме инструкции найдены на http://blogs.msdn.com/b/webtopics/archive/2009/01/19/service-principal-name-spn-checklist-for-kerberos-authentication-with-iis-7-0.aspx но безрезультатно.

Моя текущая настройка сервера выглядит следующим образом:

ARR

Веб-ферма

Журналы IIS показывают следующее, когда аутентификация работает / не работает. Если я правильно понимаю, все запросы должны показывать DOMAIN \ User_Name:

2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/stylesheets/techweb.landing.css - 8002 DOMAIN\User_Name ARR-HOST-1-IP-ADDRESS 200 0 0 62
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/user-background-right.gif - 8002 - ARR-HOST-1-IP-ADDRESS  401 2 5 0
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/user-background-left.gif - 8002 DOMAIN\User_Name ARR-HOST-IP-ADDRESS 200 0 0 31
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/user-icon.png - 8002 - ARR-HOST-1-IP-ADDRESS 401 2 5 0
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/user-icon.png - 8002 - ARR-HOST-1-IP-ADDRESS 401 1 2148074248 0
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/application-icon.png - 8002 - ARR-HOST-1-IP-ADDRESS 401 1 2148074248 0
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/user-background-right.gif - 8002 - ARR-HOST-1-IP-ADDRESS 401 1 3221225581 15
2012-11-19 15:03:17 CLUSTER-IP-ADDRESS GET /home/images/building.gif - 8002 DOMAIN\User_Name ARR-HOST-2-IP-ADDRESS 200 0 0 218

Кто-нибудь знает, что может вызвать эту проблему и как я могу ее решить?

РЕДАКТИРОВАТЬ

Я вижу, что заголовки Negotiate отправляются на серверы всякий раз, когда я выполняю захват сети.

Первый запрос /home:

Запрос

Ничего

отклик

Proxy-Support: Session-Based-Authentication
WWW-Authenticate: NTLM
WWW-Authenticate: Negotiate

Второй запрос /home:

Запрос

Authorization: Negotiate YIGeBgYrBgEFBQKggZMwgZCgGjAYBgorBgEEAY....

отклик

Proxy-Support: Session-Based-Authentication
WWW-Authenticate: Negotiate oRUwE6ADCgEDoQwGCisGAQ....

Третий (и последний) запрос /home:

Запрос

Authorization: Negotiate oTMwMaADCgEBoioEKE5UTE1TU1AAAQAAAJe....

отклик

Proxy-Support: Session-Based-Authentication
WWW-Authenticate: NTLM
WWW-Authenticate: Negotiate

После третьего запроса я получаю страницу 401 от IIS.

Получите захват сетевого пакета с ошибочными запросами и проверьте заголовок запроса Http на наличие токена аутентификации Kerberos. Если вы ожидаете токен Kerberos, а его нет, проблема, вероятно, не в ваших серверах.

Я предполагаю, что вы ожидаете Kerberos из-за контрольного списка SPN.

Для получения дополнительной информации см. Следующее:

https://serverfault.com/a/440050/20701