- 1、本文档共2页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一个用户权限管理模块的设计思路
?
一个用户权限管理模块的设计思路:
1.?权限资源(功能资源)
系统的所有权限信息。权限具有上下级关系,是一个树状的结构。如下:
!--[if !supportLists]--???!--[endif]--系统管理
!--[if !supportLists]--???!--[endif]--单位管理
!--[if !supportLists]--???!--[endif]--查看单位
!--[if !supportLists]--???!--[endif]--添加单位
!--[if !supportLists]--???!--[endif]--修改单位
!--[if !supportLists]--???!--[endif]--删除单位
?
!--[if !supportLists]--???!--[endif]--部门管理
!--[if !supportLists]--???!--[endif]--查看部门
!--[if !supportLists]--???!--[endif]--添加部门
!--[if !supportLists]--???!--[endif]--修改单位
!--[if !supportLists]--???!--[endif]--删除单位
?
对于每个权限,又存在两种情况:1可访问;2可授权,部分表中采用拥有类型做判断(0可访问,1即可访问也可授权)
?
2.?用户
系统的具体操作者,用户可以自己拥有权限信息,可以归属于0~n个角色,可属于0~n个组。他的权限集是自身具有的权限+所属的各角色具有的权限+所属的各组具有的权限的合集。它与权限、角色、组之间的关系都是n对n的关系。
?
3.?角色
为了对拥有相似权限的用户进行分类管理,因此定义角色,例如:超级管理员,一般管理员、一般用户等角色。在这里同时也让角色具有上下级关系,形成树状视图,父级角色的权限是自身及它的所有子角色的权限的综合。
?
4.?组
为了更好地管理用户,对用户进行分组归类,简称为用户分组。组也具有上下级关系,可以形成树状视图。在实际应用中,我们知道,组也可以具有自己的角色信息、权限信息。
就好比是javaeye中的圈子,一个圈子可以拥有多个会员,同时一个会员也可以加入多个圈子,对于不同的圈子又有不同的权限信息。(组的解释:例如一个公司中,不同的部门即可划分不同的组来进行权限的分配)
?
针对以上描述,结构关系如下:
?
整个模块分为组权限管理、角色权限管理、用户权限管理。
其中组权限管理:组权限?=?所属角色的权限合集?+?组自身的权限。
角色权限管理:角色权限?=?角色自身权限。
用户权限管理:用户权限?=?所属角色权限合集?+?所属组权限合集?+?用户自身权限。
?
注意:因为组和角色都具有上下级关系,所以下级的组或角色的权限只能在自己的直属上级的权限中选择,下级的组或者角色的总的权限都不能大于直属上级的总权限。
?
欢迎大家拍砖,给点建议。
文档评论(0)