欢迎来到天天文库
浏览记录
ID:44573186
大小:717.17 KB
页数:10页
时间:2019-10-23
《用户管理权限设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、用户权限管理经典篇实现业务系统中的用户权限管理-设计篇B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特姝的客户端,所以访问川户的权限检测町以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统來实现访问权限检测,讣经过授权的用户可以正常合法的使用已授权功能,而对那些未经授权的“非法用户”将会将他们彻底的“拒之门外”。下面就
2、让我们一起了解一下如何设计可以满足大部分B/S系统中对用户功能权限控制的权限系统。需求陈述不同职责的人员,对于系统操作的权限应该是不同的。优秀的业务系统,这是最基本的功能。•可以对“组”进行权限分配。对于一个人企业的业务系统来说,如杲要求管理员为其下员工逐一分配系统操作权限的话,是件耗时且不够方便的事情。所以,系统屮就提岀了对“纽”进行操作的概念,将权限一致的人员编入同一组,然后对该组进行权限分配。•权限竹理系统应该是可扩展的。它应该可以加入到任何带冇权限管理功能的系统中。就像是组件一样的可以被不断的重用,而不是每开
3、发一套管理系统,就要针对权限管理部分进行重新开发。•满足业务系统中的功能权限。传统业务系统中,存在着两种权限管理,其一是功能权限的管理,而另外一种则是资源权限的管理,在不同系统Z间,功能权限是可以重用的,而资源权限则不能。关于设计借助NoahWeb的动作编程理念,在设计阶段,系统设计人员无须考虑程序结构的设计,而是从程序流程以及数据库结构开始入手。为了实现需求,数据库的设计可谓及其重要,无论是“组”操作的概念,还是整套权限管理系统的重用性,都在于数据库的设计。我们先来分析一下数据库结构:首先,action表(以下简称
4、为“权限表”),gorupmanager表(以下简称为“管理组表”),以及master表(以下简称为“人员表”),是三张实体表,它们依次记录着“权限”的信息,“管理组”的信息和“人员”的信息。如下图:r超级爸理员管埋员一般用户三四五张李王这三个表之间的关系是多対多的,一个权限可能同时属于多个管理组,一个管理组中也可能同时包含多个三四五张李王权限。同样的道理,一个人员可能同时属于多个管理组,而一个管理组中也町能同时包含多个人员。如下图:超级管理员管理员一般用户由于这三张表z间存在着多对多的关系,那么它们z间的交互,最好
5、使用另外两张表来完成。而这两张表起着映射的作用,分别是“actiongroup”表(以下简称“权限映射表”)和"mastergroup"表(以F简称“人员映射表”),前者映射了权限表与管理组表之间的交互。后者映射了人员表与管理组表之间的交互。如下图:诵丽7扭级樹里贾删除-超级箜理员添加■管理员删除-爸理员更新-一般用户趋级莒世员管理员一般用户张三-管理员李四-超级管理员李四-管理员王五-一般用户三四五张李王和囉器執野諾辭交互:••人员映射表•・使“人员表.和“管理纽表••之间得到了交互:另外,还需要一张表来控制系统运
6、行时左侧菜单中的权限分栏,也就是“权限分栏表”,如下图:a超级管理员管理员一般用户g存闕闢蓬er张三-超级管理员张三-爸理员李四-超级管理员李四■管理员王五-一般用户三四五张李王权隈分栏根据上面的分析,我们进行数据库结构设计,如下图:点击这里查看权限管理系统数据表7段设计ac^ioTiactiangraiipgroupManageractionid@ctionna/TieactioncolwniactionidactiongroupidmasteridmasternairiQcreatedategroupnaineg
7、roupinfomaste”idmasterna/riecreatedato7LMasteractioncolwndslctioneolufTinname盘Cti至6资总61百*斤idnamepasswordbdatetruenamesexbirthdaydeptpositionposition_dQ£cofficejphonemobilehomejphoneemailmasteridmasternamecreatadat©为了能够进行良好的分析,我们将数据库结构图拆分开来,三张实体表的作用已经很清晰,现在我们来看一
8、下两张映射表的作用。一权限映射表如卜图:首先,我们来了解一下权限映射表与管理组表以及权限表Z间的字段关联。acti:goupiT>mastwridmasternamEcreated•包tetiongroua?中的数据事位畫是^sqlni
此文档下载收益归作者所有