Проблема авторизации, FormsAuth и ASP.NET MVC

У меня есть довольно простое приложение сайта ASP.NET MVC. (МВК 1.0)

У меня НЕТ разделов авторизации в моем web.config, потому что я использую атрибут [Authoize] на своих контроллерах.

Web.config по умолчанию для сервера разрешает * проверку подлинности с помощью форм, как и ожидалось.

У меня есть 2 существующих выделенных (размещенных) сервера Windows 2008. Сайт работает хорошо.

У меня есть новый выделенный сервер, кажется идентичным, за исключением того, что сайт просто не будет работать. Каждый ресурс, даже изображения/javascript, перенаправляет на страницу входа.

Я попытался добавить явные правила авторизации, чтобы разрешить * и правила местоположения, тот же результат. Я проверил уровень доверия .NET, внутреннее/полное доверие. На двух серверах все работает отлично, только этот игнорирует все правила авторизации.

Любые идеи? Благодарность


person typemismatch    schedule 23.04.2009    source источник


Ответы (1)


Я нашел проблему :) Если что-то не изменилось в Windows 2008, я ожидал, что это будет отображаться как ошибка, но, как указано выше, она была скрыта аутентификацией форм.

Проблема заключалась в том, что хостинговая компания теперь добавляет диски с данными на все серверы для ваших сайтов/хранилищ. Не были установлены разрешения, позволяющие IIS читать файлы. Причина, по которой я не смог его найти, заключалась в том, что я уже добавил разрешение для пользователя пула приложений, в моем случае я просто добавил ASPNET, Network Service, IIS Anon User и т. д., чтобы иметь полные разрешения.

Мне нужно было разрешить всем как минимум читать папки веб-сайта, а затем IIS показывал незащищенный контент. Я все еще думаю, что странно, что формы auth. пинал и игнорировал все правила web.config, но в любом случае.

Я обнаружил ошибку, отключив поддержку проверки подлинности форм в диспетчере IIS 7. Затем я получил ошибку сбоя процесса из-за прав доступа к файлам.

person typemismatch    schedule 24.04.2009