ASP.NET MVC中許可權控制的簡單實現
阿新 • • 發佈:2019-01-09
1、重寫AuthorizeAttribute類,用自己的許可權控制邏輯重寫AuthorizeCore方法
public class MyAuthorizeAttribute : AuthorizeAttribute { protected override bool AuthorizeCore(HttpContextBase httpContext) { string currentRole = (Session["user"] as User).Role; //從Session中獲取User物件,然後得到其角色資訊。如果使用者重寫了Identity, 則可以在httpContext.Current.User.Identity中獲取 if (Roles.Contains(currentRole)) return true; return base.AuthorizeCore(httpContext); } }
2、在需要進行許可權控制的Action上加上相應的Attribute,並且設定可以訪問的角色組
[MyAuthorize(Roles = "Admin, User")]
public ActionResult AuthorizeMethod2()
{
return View();
}
當用戶訪問相應的Action的時候,就會進行相應的許可權控制。