还剩24页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
通用权限管理系统设计篇三概要设计阐明书转在前两篇文章中,不少朋友对我的1设计提出了异议,认为过于复杂,当然在实际日勺多种系统日勺权限管理模块中,并不像这里设计得那么复杂,我此前所做的系统中,由只有顾客和权限欧J,有只有顾客、权限和角色的I,尚有一种系统用到了顾客、权限、角色、组概念,这个系统是我在思索此前所做系统日勺权限管理部分中找到日勺某些共性而想到的一种设计方案,当然还会有不少设计不到位的地方,在设计开发过程中会慢慢改善,这个系统权当学习只用,各位朋友的好的提议我都会考虑到设计中,感谢各位朋友肚I支持今天抽时间整了一份概念设计出来,尚有某些地方尚未考虑清晰,贴出
1.0版,但愿各位朋友提出宝贵提议大家也可以点击此处《通用权限管理概要设计阐明书》自行下载,这是
1.0版本,有些地方也许还会进行部分修改,有爱好的朋友请关注我日勺blog
1.引言
1.1编写目的I本文档对通用权限管理系统的总体设计、接口设计、界面总体设计、数据构造设计、系统出错处理设计以和系统安全数据进行了阐明包括顾客][所属角色][组权限][总权限]
4.
1.4总权限组信息组1组11组12组…组2组21组22组…所选择组组1包括顾客][所属角色][组权限][总权限][通过对已具有时权限取消勾选,或为某权限添加勾选,来修改组的权限信息,点击〃保留〃按钮保留修改信息在下图中,选中组1的时候,右键点击可弹出组的操作列表,包括添加、删除和修改按钮,从而完毕在该组下添加子组,删除该组以和修改该组时功能组信息组1组11组12组…组2组21组22组…所选择组组1包括顾客所属角色][组权限][总权限]修改]阿蜜果谢星星2023-10-866sterning xxx2023-10-810•••
4.2角色权限管理
4.
2.1包括顾客角色信息角色1角色11角色12角色…角色2角色21角色22角色…所选择角色角色1包括顾客包括组][角色权限]修改]阿蜜果谢星星2023-10-866sterning xxx2023-10-810•••当顾客选择〃修改〃按钮时,弹出顾客列表,操作人可以通过勾选或取消勾选来修改该角色所包括的顾客
4.
2.2包括组角色信息角色11角色12角色…角色2角色21角色22角色…所选择角色角色1包括顾客][包括组][角色权限]修改]组ID组名称组描述1xxxl-一2xxx2--•••当顾客选择〃修改〃按钮时,弹出顾客列表,操作人可以通过勾选或取消勾选来修改该角色所包括的组
4.
2.3角色权限角色信息角色11角色12角色…角色2角色21角色22角色…所选择角色角色1包括顾客][包括组][角色权限][通过对已具有的权限取消勾选,或为某权限添加勾选,来修改角色日勺权限信息,点击〃保留〃按钮保留修改信息
4.
2.4管理角色在下图中,选中组1日勺时候,右键点击可弹出组的操作列表,包括添加、删除和修改按钮,从而完毕在该组下添加子组,删除该组以和修改该组的功能角色信息角色11角色12角色…角色2角色21角色22角色…所选择角色角色1包括顾客包括组][角色权限]修改]阿蜜果谢星星2023-10-866sterning xxx2023-10-810•••
4.3顾客权限管理
4.
3.1所属角色顾客权限信息XX企业广州分企业阿蜜果肖XX yy…北京分企业zzl zz2zz3・・・所选择顾客阿蜜果所属角色所属组][顾客权限][总权限]修改]角色ID角色名称角色描述1访客一2初级顾客一•••当顾客选择〃修改〃按钮时,弹出角色树形构造,操作人可以通过勾选或取消勾选来修改该顾客所属的角色
4.
3.2所属组顾客信息XX企业广州分企业阿蜜果肖xx yy…北京分企业zzl zz2zz3・・・所选择顾客阿蜜果所属角色][所属组][顾客权限][总权限]修改]组ID组名称组描述1组1-2组2―•••当顾客选择〃修改〃按钮时,弹出组的树形构造,操作人可以通过勾选或取消勾选来修改该顾客所属的I组
4.
3.3顾客权限顾客信息XX企业广州分企业阿蜜果肖XX yy…北京分企业zzl zz2zz3…所选择顾客阿蜜果所属角色][所属组]顾客权限][总权限]通过对已具有的权限取消勾选,或为某权限添加勾选,来修改顾客的权限信息,点击〃保留〃按钮保留修改信息
4.
3.4总权限顾客信息XX企业广州分企业阿蜜果肖XX yy…北京分企业zzl zz2zz3…所选择顾客阿蜜果所属角色][所属组][顾客权限][总权限]通过对已具有的权限取消勾选,或为某权限添加勾选,来修改顾客日勺权限信息,点击〃保留〃按钮保留修改信息
4.
3.5顾客管理当选择了某顾客时,点击右键,弹出菜单列表修改、删除、取消,点击修改和删除按钮可以实现顾客的删除和修改功能选择某个组织,例如下表中的〃广州分企业〃,弹出菜单列表添加子组织、删除组织、修改组织、添加顾客、取消,点击添加顾客按钮可以实现顾客的I添加功能顾客权限信息XX企业广州分企业阿蜜果肖xx yy…北京分企业zzl zz2zz3・・・所选择顾客阿蜜果所属角色所属组][顾客权限][总权限]修改]角色ID角色名称角色描述1访客一2初级顾客--L2背景a、软件系统的I名称通用权限管理系统;b、任务提出者、开发者谢星星;c、在J2EE日勺web系统中需要使用权限管理日勺系统
1.3术语本系统通用权限管理系统;SSH英文全称是Secure Shello
1.4预期读者与阅读提议预期读者阅读重点开发人员总体设计、接口设计、数据构造设计、界面总体设计、系统出错处理设计设计人员总体设计、接口设计、数据构造设计、系统安全设计
1.5参照资料《通用权限管理系统需求规格阐明书》《通用权限管理系统数据库设计阐明书》
2.总体设计
2.1设计目的I选择某个组织,例如下表中的I”广州分企业〃,弹出菜单列表添加子组织、删除组织、修改组织、添加顾客、取消,点击添加子组织、删除组织、修改组织按钮可以实现组织的添加、删除和修改功能顾客权限信息XX企业广州分企业阿蜜果肖xx yy…北京分企业zzl zz2zz3…所选择顾客阿蜜果所属角色所属组][顾客权限][总权限]修改]角色ID角色名称角色描述1访客一2初级顾客一
4.
44.
4.1查询操作日志操作名称I」操作人I」操作时间从LI到LI[查询][重置][删除]编号操作名称操作内容操作人操作时间1xxl--Amigo2023-10-82xx2--xxyy2023-10-8•••输入上图表单中的查询信息后,点击〃查询〃按钮,可查询出符合条件日勺信息
4.
4.2删除操作日志操作名称I」操作人I」操作时间从LI到LI[查询][重置][删除]编号操作名称操作内容操作人操作时间1xxl-Amigo2023-10-82xx2-xxyy2023-10-8•••输入上图表单中的查询信息后,点击〃查询〃按钮,可查询出符合条件日勺信息而后点击〃删除〃按钮,可删除符合查询条件的操作日志
5.数据构造设计数据库设计的I模型请参见《通用权限管理系统.数据库模型.pdm》表的阐明请参见《通用权限管理系统数据库设计阐明书》
5.
1.1命名的I规范数据库中表、主键、外键、索引日勺命名都以统一的规则,采用大小写敏感的I形式,多种对象命名长度不要超过30个字符,这样便于应用系统适应不一样的数据库平台
5.
1.2数据的一致性和完整性为了保证数据库的一致性和完整性,往往通过表间关联的方式来尽量的减少数据日勺冗余表间关联是一种强制性措施,建立后,对父表Parent Table和子表ChiId Table的I插入、更新、删除操作均要占用系统的开销假如数据冗余低,数据的完整性轻易得到保证,但增长了表间连接查询的I操作,为了提高系统日勺响应时间,合理的数据冗余也是必要的使用规则Rule和约束Check来防止系统操作人员误输入导致数据的错误是设计人员日勺另一种常用手段,不过,不必要的I规则和约束也会占用系统欧I不必要开销,需要注意欧I是,约束对数据的有效性验证要比规则快所有这些,需要在设计阶段应根据系统操作的类型、频度加以均衡考虑
5.2数据库环境阐明数据库MySql
5.0设计库建模工具PowerDesignerl
2.
05.3数据库命名规则表名以T开头,外键以FK开头,索引以INDEX开头
5.4逻辑构造pdm文献的|名称为《通用权限管理系统—数据库模型》
6.5物理存储通过数据库建模工具PowerDesignerl2可以将pdm导出为文本文献,将数据库脚本放入文本文献中保留
7.6数据备份和恢复数据库需定期备份(每天备份一次),备份文献格式为backup_yyyyMMdd,数据库被破坏时,运用最新的备份文献进行恢复
8.系统出错处理设计
9.1出错信息错误分类子项和其编码错误名称错误代码备注数据库错误连接连接超时连接断开数据库自身错误代码数据库自身错误代码100002+数据库错误代码TCP连接错误连接连接超时连接断开其他TCP连接错误(socket自身错误代码101002+socket错误代码配置信息错误未配置输入参数102023未配置输出参数102023组管理部分自定义错误103001—103999角色管理部分自定义错误104001—104999顾客管理部分自定义错误105001—105999106001—
1069996.2补救措施为了当某些故障发生时,对系统进行和时日勺补救,提供如下补救措施a.后备技术定期对数据库信息进行备份(每天一次),当数据库因某种原因被破坏时,以最新的数据库脚本进行恢复;
7.系统安全设计
7.1数据传播安全性设计SSH可以通过将联机的I封包加密的技术进行资料日勺传递;使用SSH可以把传播时所有数据进行加密,虽然有人截获到数据也无法得到有用的信息同步数据通过压缩,大大地加紧了传播的速度通过SSH的使用,可以保证资料传播比较安全并且传播效率较高
7.2应用系统安全性设计操作人的操作信息需要提供操作记录对系统的异常信息需进行记录,已备后来查看只有授权顾客才能登录系统,对于某个操作,需要具有对应权限才能进行操作
10.3数据存储安全性设计对于顾客日勺密码等敏感信息采用MD5进行加密尤其申明1:资料来源于互联网,版权归属原作者2:资料内容属于网络意见,与本账号立场无关3:如有侵权,请告知,立即删除权限系统一直以来是我们应用系统不可缺乏的一种部分,若每个应用系统都重新对系统的权限进行设计,以满足不一样系统顾客的需求,将会挥霍我们不少宝贵时间,因此花时间来设计一种相对通用的权限系统是很故意义的10本系统的设计目的是对应用系统日勺所有资源进行权限控制,例如应用系统的功能菜单、各个界面的按钮控件等进行权限的操控
2.2运行环境操作系统Windows系统操作系统和Linux系列操作系统
2.3网络构造通用权限管理系统可采用Java Swing实现,可以在桌面应用和Web应用系统中进行调用假如需要要适应所有开发语言,可以将其API公布到WEB Service上临时用Java Swing实现
2.4总体设计思绪和处理流程在阐明总体设计思绪前,我们先阐明本系统的有关概念
1.权限资源系统的所有权限信息权限具有上下级关系,是一种树状的构造下面来看一种例子系统管理顾客管理查看顾客新增顾客修改顾客删除顾客对于上面日勺每个权限,又存在两种状况,一种是只是可访问,另一种是可授权,例如对于〃查看顾客〃这个权限,假如顾客只被授予〃可访问〃,那么他就不能将他所具有的这个权限分派给其他人
2.顾客应用系统日勺详细操作者,顾客可以自己拥有权限信息,可以归属于0~n个角色,可属于0~n个组他日勺权限集是自身具有的权限、所属的I各角色具有的I权限、所属的I各组具有的权限的I合集它与权限、角色、组之间的关系都是n对n的I关系
3.角色为了对许多拥有相似权限的顾客进行分类管理,定义了角色的概念,例如系统管理员、管理员、顾客、访客等角色角色具有上下级关系,可以形成树状视图,父级角色日勺权限是自身和它的所有子角色日勺权限的综合父级角色H勺顾客、父级角色的组同理可推
4.组为了更好地管理顾客,对顾客进行分组归类,简称为顾客分组组也具有上下级关系,可以形成树状视图在实际状况中,我们懂得,组也可以具有自己的角色信息、权限信息这让我想到我们的I顾客群,一种群可以有多种顾客,一种顾客也可以加入多种群每个群具有自己的I权限信息例如查看群共享群也可以具有自己的I角色信息,例如一般群、高级群等针对如上提出的四种对象,我们可以整顿得出它们之间的关系图,如下所示总体设计思绪是将系统分为组权限管理、角色权限管理、顾客权限管理、组织管理和操作日志管理五部分其中组权限管理包括包括顾客、所属角色、组权限资源和组总权限资源四部分,某个组的权限信息可用公式表达组权限=所属角色日勺权限合集+组自身的权限角色权限管理包括包括顾客、包括组和角色权限三部分,某个角色口勺权限欧I计算公式为角色权限=角色自身权限顾客权限管理包括所属角色、所属组、顾客权限、顾客总权限资源和组织管理五部分某个顾客总的权限信息存在如下计算公式顾客权限=所属角色权限合集+所属组权限合集+顾客自身权限组织管理即对顾客所属日勺组织进行管理,组织以树形构造展示,组织管理具有组织的增、册IJ、改、查功能操作日志管理用于管理本系统的操作日志注意由于组和角色都具有上下级关系,所如下级的组或角色的权限只能在自己的直属上级欧I权限中选择,下级的组或者角色欧I总的I权限都不能不小于直属上级的总权限
2.5模块构造设计本系统的具有的功能模块构造如下图所示
2.6尚未处理日勺问题无
3.接口设计(暂略)
3.1顾客接口(暂略)
3.2外部接口(暂略)
3.3内部接口(暂略)
4.界面总体设计本节将论述顾客界面时实现,在此之前对页面元素做如下约定序号页面元素约定1按钮未选中时[按钮名称]选中时[按钮名称]2单项选择框3复选框4下拉框选项,…,]▽5文本框L6TextArea|…7页签未选中时选项名称选中时选项名称8未选中链接链接文字9选中链接链接文字10阐明信息阐明信息、
2.1组权限管理
4.
1.1包括顾客组信息组1组11组12组…组2组21组22组…所选择组组1包括顾客所属角色]组权限][总权限]修改]阿蜜果谢星星2023-10-866sterning xxx2023To-810•••当顾客选择〃修改〃按钮时,弹出顾客列表,操作人可以通过勾选或取消勾选来修改该组所包括的I顾客
4.
1.2所属角色组信息组1组11组12组…组2组21组22组…所选择组组1包括顾客][所属角色][组权限][总权限]修改]角色ID角色名称角色描述1访客--2初级顾客一当顾客选择〃修改〃按钮时,弹出角色树形构造,操作人可以通过勾选或取消勾选来修改该组所属的角色
4.
1.3组权限组信息组1组11组12组…组2组21组22组…所选择组组1。