权限系统设计模型及实现_第1页
权限系统设计模型及实现_第2页
权限系统设计模型及实现_第3页
权限系统设计模型及实现_第4页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、内容发布系统权限设计说明书项目名称:内容发布系统发布系统vl.O分类:设计说明书部门:开发部作者:日期:错误 !未指疋开关参数。G七口 参考V1.0页数:号:附注 :日期修改说明版本作者审批人审批日期2004-3 月建立1.02004-7-15 增加栏目的权限控制说明1.0权限系统设计模型及实现 设计一个比较抽象和通用的权限系统是一件比较复杂的工作,根据实际目前项目需要, 我们设计了如下一个简易基于角色的权限模块。先引出权限系统中的概念1 概念用户:使用权限的登录用户或者系统.一个用户有多个角色,但同时只能以一个角色登录系统。角色:拥有相关权限的一个集合。一个角色可以有多个权限,一个角色有多个

2、用户。权限:权限是一个资源+操作的组合。即权限是指对什么东西有什么动作。如用户管理是一个资源,而用户的增加、修改是指具体的操作,而整个“用户”+“增加”就构成了用户增加的权限。单独的资源或操作在权限系统中没有意义。操作:对资源的动作。如对数据的增加、删除、修改;对模块的登录等。资源:系统中要权限控制的东西。也就是什么东西要进行权限的控制。资源有不同的类型,一般系统中会遇到的能用类型为功能权限和数据权限。目前我们系统中用到的资源类型有“模块”和“栏目”,用英文和表示。2 模型的描述类图说明::的实现:的实现:表示一个权限点。其实表示操作的资源编号,表示资源的类型,目前实现为表示是个模块,表示资源

3、是一个栏目;是操作的编号,对于模块和栏目不同类型的资源操作可能是不一样的。详见附件里的操作编码规则。:表示系统中的某个功能模块。:表示用户和角色的关联关系。一个,有多个:表示角色和权限的关联关系。一个有多个3 具体实现具体的实现包括了3 个部分:权限的创建、权限的授权、权限的使用。下面各个部分描述 :3.1 权限创建权限的创建过程就是应用系统开发人员定义好系统中要权限控制的资源以及定义对对资源具体化为哪些操作的过程。在我们的内容发布里面作如下定义:模块资源把系统中要用到的模块进行资源的统一编号,以模块的编号作为权限控制里资源编号,目前的编号规则为如下:编号说明:编号由”上级编号” +”两位本级

4、编号”组成上级编号由”功能码” +”两位本级编号”组成功能码编码为:新闻采集 P 内容发布C广告发布 A系统管理 S 应用管理Y功能编号备注新闻采集P采集状态P01采集发布P02站点维护P03采集控制P04内容发布C文章栏目设置C01文早发布C02专题栏目设置C03专题发布广告发布客户管理广告位管理广告发布系统管理用户管理角色管理权限管理模板管理参数配置应用管理投票管理管理公告管理留言管理C04AA01A02A03SS01S02S03S04S05YY01Y02Y03Y04栏目资源栏目资源的编号采用多级栏目的,是数字模块操作模块的操作编码规则遵循统一的操作编码规则,即:模块名称” “” +”按钮

5、名称”其中按钮名称只在保证可以唯一标识就可以了,如用数字或者英文。目前我们定义文章发布里的按钮名称为:按钮按钮 (操作)编号备注新增C02发布C02删除C02修改C02预览C02所有C02如果用户有这个权限,有所有操作的权限审核C02红色表示目前未实现的功能复制移动C02C02其它模块的按钮操作也可以类似编码,但因为目前核心是文章发布。所以暂时这里不一一列出。以后扩展的时候一起实现。栏目操作栏目的操作按钮根据目前的需求定义如下操作。按钮按钮 (操作)编号备注新增删除修改授权对这个栏目的子栏目进行管理贝的权限分派所有C02如果用户有这个权限,有所有操作的权限3.2 权限授权权限授权就是指对于某个

6、角色赋予相关的栏目权限和模块权限。其中栏目权限为树状显示如下图:模块的权限如下图:3.3 权限使用对于前台使用权限的来说通过两个接口来调用。主要是和来实现。其类图如下:LserInfoBeanuser : Userfundisx : Listcategory 1 1ST :tiasFunction (functionid : String) : booleanhasCategory(operateid : String) : booleanhasFunct iorOperat CfuncT ionid : String, operateid : String); bool canhasCate

7、fforyOperate(categoryid : String, operateid ; String) : boolean petUser() : UsergetRole0 : StringgeiAllCaiegory() : ListACLManaRprislserlnHole(Iser, Ro 亡 :boolean etUserKales (User user) : ArrayL i st getUserPertnissions (L'scruser) : ArrayL ist geiBolePi r: ,1 ssions (Role role) : ArrayListsU s

8、crPermission( CseT user, Peitnission perroission) : boolean权限的使用有如下逻辑过程:用户是否有斯栏 目的权限User ;nfoBean.!ltegcrv(Strng cid)(只在文章虧里有这一步)' 啊焕嘶 ?磁或議询赢石亦 g 酿駄翊 鳩感飙)坤户是否荷臬亍拗作(按钮. )的权限3.4 权限分级管理实现模型分析对于比较大型的网站,集中式的管理无法满足用户的内容分级别、管理分层次的需求。因此要设计分级的权限管理模型。从实际使用用例来看,有如下的功能(操作)模型:增加、删除、修改子栏目栏目管理增加、删除、修改子栏目内容后台管理员文章管理删除、修改子角色用尸、角色官理对他有权限的栏目进行栏目的下级授权,指定下级管理员,授权操作权限栏目授权隐含的逻辑约束 :1 分级管理员可以管理子栏目经及子栏目所有子孙栏目2 分级管理员可以管理子栏目所有子孙栏目下的文章3 分级管理员只能删除他所增加的用户和角色4 分级管理员只能授权他有权限的下级栏目角5 分级管理员的核心仍然是基于色的,即分级管理员其实是分级角色下的用户栏目的授权完成栏目资源的权限分派,栏目资源的权限点分为如下表:按钮(权限点)按钮(操作)编号备注栏目管理栏目管理,考虑实现的复杂性,把栏目的增、删、改统一成一个权限点“栏目管理”栏目新增新增一个栏目栏目删除删除一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论