2012-05-02 2 views
0

У меня есть приложение ASP.NET MVC 3 с авто-авторизацией, используя имя пользователя входа в систему клиента.Как настроить IIS для правильной работы приложения интрасети ASP.NET MVC?

Когда я запускаю приложение на веб-сервере VS, он отлично работает. Он запускается на случайном порту (как обычно) и сразу же принимает любой HTTP-запрос, передавая веб-серверу свое имя пользователя Windows правильно (с именем компьютера также).

Когда я развертываю этот проект на IIS 7.5, я никак не могу получить доступ к веб-сайту - я изменил параметры аутентификации и не получил никакого результата - либо IIS бесконечно запрашивает учетные данные, либо отображает страницу «Ошибка, без доступа».

Итак, какие параметры мне нужно настроить, чтобы кто-нибудь правильно открыл сайт, предоставляя учетные данные автоматически?

+0

Какой режим автофокусировки вы установили? А что хотите использовать? Использование AD/NTLM/Kerberos? – abatishchev

ответ

2

Вы должны включить проверку подлинности Windows в IIS для своего сайта.

+0

+1 или конкретное веб-приложение (виртуальный каталог). – abatishchev

+0

Вам также необходимо отключить анонимную аутентификацию. – pms1969

0

Если вы хотите использовать Windows Authentication, просто включите его в IIS и отключите другие типы. Имейте в виду, что он будет автоматически работать только в Internet Explorer и Chrome. Opera и Firefox будут запрашивать учетные данные.

Также одна проблема, которую я чувствую, может быть, это проверка ее на встроенном веб-сервере. В то время как он функционирует, он не обрабатывает аутентификацию точно так, как вы ожидали. Даже когда вы разрешаете NTLM и веб-сайт аутентифицирует вас, он по-прежнему использует анонимную аутентификацию в некоторых местах.

Я бы предложил развернуть и протестировать такой сайт не на встроенном сервере, а на локальном IIS. Легко настроить прямо из VS, вам просто нужно включить его, если у вас его нет в Windows. Также имейте в виду, чтобы правильно настроить аутентификацию в IIS.

Удачи вам!

1

Вы также можете установить веб-узел для использования проверки подлинности Windows из вашего файла web.config под <system.web> теге так:

<system.web> 
    <authentication mode="Windows" /> 
</system.web> 

Это будет подобрано IIS, который будет установлен режим проверки подлинности для Окна.

Смежные вопросы