Я использую атрибут Authorize()
для защиты моих контроллеров/действий и хочу только показывать действие входа для не прошедших проверку пользователей - иначе, иначе говоря, запретить доступ к аутентифицированным пользователям.MVC Авторизованный атрибут deny
Я не смог найти что-нибудь в Интернете дело либо с отрицающих разрешения или позволять отрицательным разрешений (LoggedIn т.е.!)
Может кто-то пожалуйста, мне точку в правильном направлении?
MVC2, .Net 4
EDIT: Для clairfy, я хочу что-то вроде этого:
Public Class PublicController
Inherits ControllerBase
<Authorize()> 'Only logged-in users can logout
Public Function Logout() as ActionResult
Return View()
End Function
'Something here to indicate that only NON-authorized users should see this action
Public Function Login() as ActionResult
Return View()
End Function
End Class
не ясно какова ваша проблема. Любой метод управления/действия, который вы украшаете с помощью '[Authorize]', по умолчанию будет ограничен аутентифицированными пользователями. Другими словами, если вы не вошли в систему, вы не сможете выполнить эти контроллеры/действия. Что еще вы хотите ограничить/разрешить? – RPM1984
Просто угадывая здесь, Basiclife; Вы имеете в виду, что если кто-то уже вошел в систему, но только не в соответствующей роли для версии Authorize(), которая принимает роли/имена пользователей, вы хотите, чтобы на странице входа было другое, кроме того, что они были направлены? –
Если Эндрю правильно, быстрый поиск в google с помощью «mvc authorize» дает что-то вроде: http://davidhayden.com/blog/dave/archive/2009/04/09/CustomAuthorizationASPNETMVCFrameworkAuthorizeAttribute.aspx – xandy