Posted on 2008-04-07 22:49
G_G 阅读(2808)
评论(6) 编辑 收藏 所属分类:
javaGeneral
权限设计的探讨阅读后感
文章路径:http://www.chinaitpower.com/A200508/2005-08-07/183934.html
权限设计通常包括数据库设计、应用程序接口(API)设计、程序实现三个部分。
权限分类:
首先是针对数据存取的权限,通常有录入、浏览、修改、删除四种。
其次是功能,它可以包括例如统计等所有非直接数据存取操作,另外,我们还可能对一些关键数据表某些字段的存取进行限制。
权限表及相关内容大体可以用六个表来描述,如下:
1 拥有权限角色(即用户组):具体拥有权限描述实体。
2 用户表:用户的描述,其它(如地址、电话等信息);
3 角色-用户对应表:该表记录用户与角色之间的对应关系(多对多关系),一个用户可以隶属于多个角色,一个角色组也可拥有多个用户。
4 权限列表:程序所有权限列表。该表记录所有要加以控制的权限,如录入、修改、删除、执行等;
5 权限-角色-用户对应表:权限对应角色(多对多关系)再由4表关系到用户。
在探讨文中的第4条,我怎么都不太理解?望大家探讨。反向权限吗?那怎么和系统中的拥有一起描述?
下面提出一些自己的见解:
1 用户表:用户的描述,其它(如地址、电话等信息);
2 权限列表:程序所有权限列表。该表记录所有要加以控制的权限,如录入、修改、删除、执行等;
3 权限树(模糊看成角色,但有些不同。树性结构,结构数据库中表外键自己):孩子接点继承父亲接点全部权限,并在次上扩充和删减权限建立自己分支。
4 权限列表-权限树:(多对多关系)用于描述此权限树接点对父亲接点权限继承下,由自己添加和消减的权限;
本表中用一列枚举列用于表示本纪录是添加或删减权限。
5 用户-权限树:权限树接点对应用户(多对一)关系。
感觉自己的这种框架,能很好的扩充(在某接点下增,删某权限或直接找到最向近的一个权限树接点并继承)
大家多说说自己的见解,和对比下这两个框架的一些优缺点把。本人随时恭听。G_G
google doc 原稿: http://docs.google.com/Doc?id=dkvfctc_16hgvfkbfs