Я использую ASP.NET MVC 3 и пытаюсь сделать что-то, что должно быть действительно простым ...
Мое приложение использует проверку подлинности с помощью форм, и это прекрасно работает для контроллеров / действий. Например, если я украшаю контроллер или действие с атрибутом, указанным ниже, только члены группы администраторов могут их просматривать:
[Authorize(Roles="Administrators")]
Однако у меня есть папка в папке Scripts по умолчанию, которая называется Admin. Я хочу, чтобы только члены группы «Администраторы» имели доступ к сценариям в этом каталоге, поэтому я создал новый файл web.config в каталоге со следующим содержимым:
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow roles="Administrators"/>
<deny users="*"/>
</authorization>
</system.web>
</configuration>
Однако, независимо от того, является ли пользователь членом группы «Администраторы» или нет, он получает сообщение 302 Found и затем перенаправляется на страницу входа в систему.
Если я изменю web.config на allow user="*"
, тогда он будет работать. Это также работает, если я добавлю allow users="Username"
для конкретного пользователя, с которым я тестирую.
Любые идеи о том, где я иду не так или где я мог бы начать расследование?