权限设计总结一句话就是:拥有权限的主体来管控系统的各种资源资源,及在资源上体现的各种操作。
概括来说就是,权限离不开三要素:
1:权限的主体
2:管控的资源
3:各种操作
现对三要素分别做简单的阐述
权限的主体:权限的主体在系统里面以用户,角色,部门,工作组来体现。
管控的资源:对于asp.net web网站来说,资源大的方面来说有:功能模块,菜单等,具体的方面有:Page页面,Button控钮,链接等等。
各种操作:这个很好理解,常见的添加、修改、删除、停用、查看、审核操作等等。
数据库设计见下图:
上图中,系统权限表一张表就可以保存所有的权限数据了;对于权限的名称,如新增操作、修改操作、删除操作,这些操作权限,也可以单独设计一张表来保存,不过我一般定义好枚举来表示,如:
添加操作=1,
修改操作=2,
删除操作=4,
查看=8,
停用=16,
启用=32
。。。。。。相信大家伙明白地。然后保存时,将权限值保存到系统权限表的权限操作字段即可。