我必须在asp.net mvc中开发一个授权过滤器。我的网站中有五类用户,而我的网站使用自定义创建的身份验证系统。现在我有一个控制器操作,其中有3个可以访问五种类型的用户。如何创建一个过滤器(基本上授权)并使用它满足我的要求?我想我需要创建带参数的授权过滤器。我应该可以使用这样的东西。
授权[UsersType = “管理员,会计师,运算符”]
使用的技术:Asp.net MVC先谢谢
答案 0 :(得分:4)
UsersType
public class AuthorizeUserAttribute :AuthorizeAttribute
{
private string[] _userType { get; set; }
public AuthorizeUserAttribute(string UsersType)
{
// parse your usertypes here.
}
protected override void OnAuthorization(AuthorizationContext filterContext)
{
// do the appropriate assigning and authorizing of methods here
....
base.OnAuthorization(filterContext);
}
}
现在,您可以在控制器中的Method中放置一个属性
[AuthorizeUser("admin,accountant,operator")]
public ActionMethod Index()
{
return View();
}