tnblog
首页
视频
资源
登录

.NET Mvc EF 小规模的权限管理

3689人阅读 2019/10/31 10:41 总访问:317916 评论:0 收藏:0 手机
分类: .NET MVC权限

《再别康桥》

"轻轻地我走了,正如我轻轻地来,我挥一挥衣袖,不带走一片云彩”                               ——徐志摩


我们想要做一个大致规模的权限管理,第一步肯定要做登录的访问权限限制:

1,我们建立类库,然后新建数据库模型链接数据库


2,再类库里封装用户登录及各个用户权限的方法


3,就是利用过滤器限制登录权限了,如下图:

注意:设置了全局的权限的话所有的页面都进不去,因此我们要在登录的控制器里设置

最后在FilterConfig里配置使用就好了

这样我们的登录权限就做好了,访问其他页面必须经过登录才能访问哟


第二版块就有点难了,大致思路是通过在数据库建立用户表,权限表,用户权限关联表,实现不同用户得到不同的访问页面和操作功能的权限.

1,数据库的设计如下:


2,在登录的控制器里编写验证方法

        public ActionResult LoginIndex(Users user)
        {
            //判断通过执行
            if (ModelState.IsValid)
            {
                UsersDAL userDAL = new UsersDAL();
                Users users = userDAL.Login(user);


                if (users != null)
                {
                    List<Powers> powersList = userDAL.GetPremissonById(users.Id);
                    //保存登陆信息
                    Session["userinfo"] = users;
                    //保存登陆的用户名
                    TempData["userName"] = user.userName;

                    //保存登陆的用户,分配权限
                    Session["powersList"] = powersList;
                    return RedirectToAction("Index", "Home");
                }
                else
                {
                    TempData["errorinfo"] = "用户名或密码错误";
                    return RedirectToAction("Index", "Login");
                }

            }
            return RedirectToAction("Index");

        }
    }


注意:这里可能会报错,如下:

原因是:我们的数据模型是在类库里新建的,所以EF的Web.config需要配置文件,

我们只需要在数据模型的App.Config复制到EF的Web.config配置即可,这里就不细说拉。


3,登录成功后,我们要在前台首页显示当前用户的权限表及该表下面的子系表:


在首页菜单栏,我们可以这样:


如果以上步骤都实行了的话,那么初步的用户管理权限就完成了。

下期分享不同用户的修改树形权限,敬请期待...




评价
你之所以觉得时间一年比一年过得快,是因为时间对你一年比一年重要。
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
欢迎加群交流技术