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

Невозможно войти на страницы, защищенные аутентификацией Windows, находясь на сервере

У меня есть общедоступный веб-сервер (Windows Server 2008, IIS 7) с веб-сайтом, который позволяет анонимный доступ. У меня есть подкаталог на этом сайте, который я защитил, отключив анонимную проверку подлинности и включив проверку подлинности Windows.

Работая удаленно, у меня нет проблем с входом в систему (в любом браузере), чтобы увидеть эти защищенные страницы, используя:
имя пользователя (без домена)
пароль

Но ... когда возникает ошибка времени выполнения ASP.NET, я должен работать на сервере, чтобы увидеть ошибку. Вот проблема: по какой-то причине я не могу войти на эти защищенные страницы, на которых запущен IE8 на сервере. Появится диалоговое окно входа в систему, но ни один из вариантов входа в систему / pw не работает ни в одном из вариантов, которые я пробовал. Что мне здесь не хватает? Какой формат ищет сервер?

редактировать: имя пользователя / пароль - это просто логин Windows.

Это вызвано проверкой обратной связи, которая включена по умолчанию, начиная с Windows Server 2003 SP1. В основном он выполняет дополнительную проверку и блокирует работу вашего запроса Windows Auth на том же компьютере (с обратной связью).

Вы можете отключить его, следуя инструкциям в этой статье базы знаний: http://support.microsoft.com/kb/896861.

Вопреки тому, что говорится в документе, вам не нужно перезагружать IE, чтобы это заметил. Он сразу заработает. Вот инструкции, которым вы можете следовать (такие же, как в статье базы знаний)

  1. Нажмите кнопку Пуск, введите regedit и нажмите кнопку ОК.
  2. В редакторе реестра найдите и выберите следующий раздел реестра: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa
  3. Щелкните правой кнопкой мыши Lsa, выберите пункт «Создать» и выберите «Значение DWORD».
  4. Введите DisableLoopbackCheck и нажмите клавишу ВВОД.
  5. Щелкните правой кнопкой мыши DisableLoopbackCheck и выберите команду Изменить.
  6. В поле «Значение» введите 1 и нажмите кнопку «ОК».

Еще раз проверьте свою страницу на локальном компьютере. На этом этапе это должно сработать для вас.

В какой зоне безопасности IE находится URL-адрес приложения? Вы пробовали поместить URL-адрес в зону интрасети? или вы пробовали принудительно использовать NTLM в политике локальной безопасности? Посмотреть здесь: Невозможно войти на страницы, защищенные аутентификацией Windows, находясь на сервере). Посмотрите эту ветку, которая похожа на ту, с которой вы столкнулись. https://stackoverflow.com/questions/2563445/why-does-integrated-windows-authentication-fail-when-clients-access-off-the-netwo

Включена ли у вас конфигурация усиленной безопасности?

Один из способов обойти эту проблему - использовать ssh для перенаправления трафика на вашу рабочую станцию.

Используйте это как руководство по настройке SSH-туннеля: http://www.commandlinefu.com/commands/view/55/start-a-tunnel-from-some-machines-port-80-to-your-local-post-2001

Вы можете попробовать другой браузер на сервере, чтобы увидеть, есть ли у вас такая же ошибка аутентификации по всем направлениям, вы можете быстро протестировать портативные версии Firefox / Chrome / Opera: http://portableapps.com/apps/internet