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

下载本文档

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

文档简介

内容发布系统权限设计说明书项目名称:内容发布系统发布系统v1.0分类:设计说明书部门:开发部作者:Chris Chen日期:2014年2月26日参考号:V1.0页数:附注:文 档 控 制 页日 期修改说明版本作 者审批人审批日期2004-3月建立1.0Chris Chen2004-7-15增加栏目的权限控制说明1.0Chris Chen 权限系统设计模型及实现设计一个比较抽象和通用的权限系统是一件比较复杂的工作,根据实际目前项目需要,我们设计了如下一个简易基于角色的权限模块。先引出权限系统中的概念1 概念用户:使用权限的登录用户或者系统.一个用户有多个角色,但同时只能以一个角色登录系统。角色:拥有相关权限的一个集合。一个角色可以有多个权限,一个角色有多个用户。权限:权限是一个资源+操作的组合。即权限是指对什么东西有什么动作。如用户管理是一个资源,而用户的增加、修改是指具体的操作,而整个“用户”+“增加”就构成了用户增加的权限。单独的资源或操作在权限系统中没有意义。操作:对资源的动作。如对数据的增加、删除、修改;对模块的登录等。资源:系统中要权限控制的东西。也就是什么东西要进行权限的控制。资源有不同的类型,一般系统中会遇到的能用类型为功能权限和数据权限。目前我们系统中用到的资源类型有“模块”和“栏目”,用英文module和category表示。2 模型的描述类图说明:CmsUser: user的实现CmsRole: role的实现CmsPermission: 表示一个权限点。其实resourceid表示操作的资源编号,resourcetype表示资源的类型,目前实现为module 表示是一个模块,category表示资源是一个栏目;operateid 是操作的编号,对于模块和栏目不同类型的资源操作可能是不一样的。详见附件里的操作编码规则。CmsFunction:表示系统中的某个功能模块。CmsUserRole: 表示用户和角色的关联关系。一个CmsUser,有多个CmsUserRoleCmsRolePermission: 表示角色和权限的关联关系。一个CmsRole有多个CmsRolePermission3 具体实现具体的实现包括了3个部分:权限的创建、权限的授权、权限的使用。下面各个部分描述:3.1 权限创建权限的创建过程就是应用系统开发人员定义好系统中要权限控制的资源以及定义对对资源具体化为哪些操作的过程。在我们的内容发布里面作如下定义:3.1.1 模块资源把系统中要用到的模块进行资源的统一编号,以模块的编号作为权限控制里资源编号,目前的编号规则为如下:编号说明:编号由”上级编号”+”两位本级编号”组成上级编号由”功能码”+”两位本级编号”组成功能码编码为:新闻采集 P 内容发布 C广告发布 A系统管理 S应用管理 Y功能编号备注新闻采集P采集状态P01采集发布P02站点维护P03采集控制P04内容发布C文章栏目设置C01文章发布C02专题栏目设置C03专题发布C04广告发布A客户管理A01广告位管理A02广告发布A03系统管理S用户管理S01角色管理S02权限管理S03模板管理S04参数配置S05应用管理Y投票管理Y01BBS管理Y02公告管理Y03留言管理Y043.1.2 栏目资源栏目资源的编号采用多级栏目的id,是数字3.1.3 模块操作模块的操作编码规则遵循统一的操作编码规则,即:“模块名称”+ “_”+”按钮名称”其中按钮名称只在保证可以唯一标识就可以了,如用数字或者英文。目前我们定义文章发布里的按钮名称为:按钮按钮(操作)编号备注新增C02_ADD发布C02_PUBLIC删除C02_DELETE修改C02_EDIT预览C02_PREVIEW所有C02_ALL如果用户有这个权限,有所有操作的权限审核C02_VERIFY红色表示目前未实现的功能复制C02_COPY移动C02_MOVE其它模块的按钮操作也可以类似编码,但因为目前核心是文章发布。所以暂时这里不一一列出。以后扩展的时候一起实现。3.1.4 栏目操作栏目的操作按钮根据目前的需求定义如下操作。按钮按钮(操作)编号备注新增ADD删除DELETE修改EDIT授权AUTH对这个栏目的子栏目进行管理员的权限分派所有C02_ALL如果用户有这个权限,有所有操作的权限3.2 权限授权权限 授权就是指对于某个角色赋予相关的栏目权限和模块权限。其中栏目权限为树状显示如下图:模块的权限如下图:3.3 权限使用对于前台使用权限的来说通过两个接口来调用。主要是UserInfoBean和CmsAclManager来实现。其类图如下:权限的使用有如下逻辑过程:3.4 权限分级管理实现3.4.1 模型分析对于比较大型的网站,集中式的管理无法满足用户的内容分级别、管理分层次的需求。因此要设计分级的权限管理模型。从实际使用用例来看,有如下的功能(操作)模型:栏目的授权完成栏目资源的权限分派,栏目资源的权限点分为如下表:按钮(权限点)按钮(操作)编号备注栏目管理ADMIN栏目管理,考虑实现的复杂性,把栏目的增、删、改统一成一个权限点“栏目管理”栏目新增ADD新增一个栏目栏目删除DELETE删除一个栏目栏目修改EDIT修改一个栏目新增C02_ADD发布C02_PUBLIC删除C02_DELETE修改C02_EDIT预览C02_PREVIEW审核C02_VERIFY红色表示目前未实现的功能复制C02_COPY移动C02_MOVE所有C02_ALL如果用户有这个权限,有所有操作的权限3.4.2 业务流程图用户

温馨提示

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

评论

0/150

提交评论