我的Controller类被授权过滤器(AuthorizeAttribute)装饰以保护其操作:
[Authorize(Roles = "User Level 2")]
public class BuyController : Controller
{
...
}
每当一个操作被调用,但是用户至少不在"User Level 2"角色中时,用户会自动重定向到登录页面,URL类似于:
http://localhost:1436/Account/Login?ReturnUrl=%2fBuy
如果用户已经登录,但没有正确的安全级别,则这并不是最优的行为!更好的做法是显示一个页面,告知用户缺少的级别,而不是显示登录页面。
我该如何自定义此行为?
是否可以以某种方式将所需的用户级别传递给登录操作?