我只为Admin创建了一个控制器,我添加:
[Authorize(Roles = "Admin")]
Run Code Online (Sandbox Code Playgroud)
在课前定义.当我尝试以管理员身份获取网站作为用户时,我被重定向到LogOn网站.如何将重定向更改为LogOn或向登录站点添加额外信息?
当用户登录但无法访问页面时,将用户弹回LogOn页面是使用现成的AuthorizeAttribute的缺点之一.您有两种选择:
创建自定义授权属性(请参阅:在ASP.NET MVC中重定向未授权的控制器)
更改web.config中"forms"元素的"loginUrl"属性,以指向根据您是否已登录处理重定向的操作方法.您可以检查操作方法以查看用户是否已登录.如果是,则可以显示未经授权的访问视图,如果不是,则可以将其发送到登录页面.例如 <authentication mode="Forms"><forms loginUrl="~/error/unauthorized" timeout="2880"></authentication>
| 归档时间: |
|
| 查看次数: |
3186 次 |
| 最近记录: |