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

Проверка подлинности Kerberos в IIS с приложением .NET под идентификатором домена не работает

Чертовски потрачен на попытки заставить веб-приложение .NET успешно использовать аутентификацию Kerberos, и был бы признателен за некоторую помощь со стороны сообщества SF.

В настоящее время существует сервер Win2003 / IIS6, на котором размещен веб-сайт из пула приложений "сетевой службы" по умолчанию. На основе МС Как создать учетную запись службы странице, я выполнил следующие шаги:

  1. Создана новая учетная запись домена MYDOMAIN\CustomASP
  2. Зарегистрировал аккаунт на сервере с aspnet_regiis -ga MYDOMAIN\CustomASP
  3. Созданы новые SPN HTTP/SERVERNAME и HTTP/SERVERNAME.fqdn.here в учетной записи домена
  4. Создал пул приложений MyPool работает под MYDOMAIN\CustomASP идентичность
  5. Создан новый виртуальный каталог MyASP работает в новом пуле приложений
  6. Убедился, что SERVERNAME находится в зоне интрасети, а в IE включен IWA

Судя по тому, что я прочитал, это все, что должно быть необходимо. Существующий сайт является используя Kerberos, и он отлично работает; но пытаюсь перейти к http: // имя сервера / MyASP приводит к регистрации неудачной попытки входа в систему и записи события 529 в журнал безопасности с пустым именем пользователя.

Для этого будет работать проверка подлинности NTLM (проверено отключением IWA IE или доступом к серверу по IP-адресу), но Kerberos просто не будет работать. У меня есть возможность принудительно использовать NTLM и требовать SSL для виртуального каталога, но это похоже на "уродливый хакерский" способ исправить это. Конечно, я просто пропускаю какой-то явно очевидный шаг в этой процедуре из-за эпической нехватки сна.

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

Вы включили олицетворение в файле web.config?

Если перейти по ссылке (http://msdn.microsoft.com/en-us/library/ms998351.aspx) в разделе «Дополнительные ресурсы» статьи, на которую вы ссылаетесь, говорится о включении олицетворения в ASP.NET.

Пара вещей, которые стоит попробовать

1) Используйте десткоп IE. Запуск IE на основе сервера по-другому.

2) Проверьте исправления на рабочем столе:

3) Проверьте свой SPN

SETSPN -L MYDOMAIN \ CustomASP

4) Проверьте свою метабазу

cscript adsutil.vbs set w3svc / 1 / NTAuthenticationProviders "Согласование, NTLM"

5) Включите Ведение журнала Kerberos