经典权限解决方案
1.权限简介 一般的管理系统都需要对用户的操作进行一定的限制,有的用户可以有许多操作,有的则有少量的操作.这样就需要一个授权机制,基于角色的授权机制描述了某个角色拥有一定数量的操作授权,属于该角色的用户则也就拥有了该角色的权限,且若用户属于多个角色则其拥有多个角色权限的集合. 我们的权限精确到按钮级别,如共享文档管理,管理可以查询、上传文档、下载文档、删除文档等操作,而一般的用户只需要查询和下载文档就可以了, 这时候我们的权限管理就发挥了作用, 下面让我们一步步开始实现! 我们使用ASP.NET结合jQuery、EasyUI实现一个精典的权限管理机制
2.数据模型设计 数据模型包括:员工表,角色表,员工与角色关系表和角色权限表 员工表: 员工登录到系统,如下图
角色表:授权权限的集合对象,如下图
角色表与员工关系表:如下图
角色权限表:如下图
3.Action定义 用户对应某功能的操作(如:增\删\改\查)需要一一建立相应操作行为实例(Action),这里以”文档管理”为例: 变量代表文档管理中的单个操作,例如 Directory_add = “j”;代表添加文档操作,其他各操作定义如下:
public static string Directory_browse = "i";
定义文档操作Action: 每个Action有标题(text)、图标(iconCls)、处理函数(handler),如下:
4.给角色授权, 结合EasyUI数据表格组件,效果如下图
勾选复选框就表示为该角色授权其他的操作
权限目录树的初始化,如下(在AppPermission.cs类)
|
请发表评论