У меня есть сайт MVC 3, который защищен аутентификацией Windows. Однако в корневом каталоге сайта есть физический файл, а также метод действия контроллера (через пользовательский маршрут), который должен быть доступен без аутентификации. Как правильно это сделать? Я хочу, чтобы весь сайт был защищен без необходимости [Authorize]
в верхней части моих контроллеров (или в базовом классе контроллеров). В IIS 7 у меня включена анонимная проверка подлинности и проверка подлинности Windows в корневом каталоге сайта.
В настоящее время у меня есть следующие (применимые) разделы в моем Web.config:
<authentication mode="Windows" />
<location path="public.js"> <!-- physical file -->
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
<location path="public.gif"> <!-- custom route to action method -->
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
Если я не поставлю [Authorize]
наверх моего контроллера, меня никогда не попросят ввести учетные данные. Мне просто нужно где-то <deny users="?"/>
или есть лучший способ подойти к этому с самого начала?
Спасибо!