• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
james1207

博客园    首页    新随笔    联系   管理    订阅  订阅

ASP.NET MVC中权限控制的简单实现

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的时候,就会进行相应的权限控制。

 

 

posted @ 2013-08-14 19:17  Class Xman  阅读(325)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3