Код из Global.asax:
| Код | ... void Application_AuthorizeRequest(Object sender, EventArgs e) { ... Context.User = new System.Security.Principal.GenericPrincipal(Context.User.Identity, new string[] { "User" }); ... }
|
web.config
| Код | <deny roles="User"/> <deny users="?"/>
|
Анонимный пользователь не имеет доступа к ресурсам с указаными настройками, после авторизации пользователь получает роль "User", но все равно имеет доступ. Насколько я понимаю, то не должен. Или роли в конфиге и роли, которые передаются методу из первого примера кода, это разные понятия? На странице, к которой не должно быть доступа для роли "User"
| Код | Context.User.IsInRole("User")
|
возвращает True. Объясните, пожалуйста, соответствуют ли роли в конфиге ролям объекта Contex.User, если да то почему не срабатывает запрет доступа в конфиге? |