基于web的通用权限管理系统.doc_第1页
基于web的通用权限管理系统.doc_第2页
基于web的通用权限管理系统.doc_第3页
基于web的通用权限管理系统.doc_第4页
基于web的通用权限管理系统.doc_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

中 国 矿 业 大 学本科生毕业设计姓 名: 学 号: 08073457学 院: 计算机科学与技术 专 业: 计算机科学与技术 设计题目: 基于web的通用权限管理系统专 题: 指导教师: 职 称: 年 月 徐州中国矿业大学毕业设计任务书学院 专业年级 学生姓名 任务下达日期: 毕业设计日期: 毕业设计题目:基于web的通用权限管理系统毕业设计专题题目:毕业设计主要达到内容和要求内容 开发一个独立于系统的基于web的通用权限管理系统,该系统要求能对不同的用户分配不同的权限,实现了不同用户进入系统具有不同的操作的权限分配操作,实现了权限分配工作的信息化、管理事务的一体化,使用户进入系统操作自动化。要求(1) 掌握通用权限管理系统的方法。 (2) 能够独立设计系统开发架构及完成具有基本功能的软件系统。 (3) 最后提交成果包括:书面论文、论文.doc文件、演示程序及源码、系统设计文档.doc文件院长签字: 指导教师签字:中国矿业大学毕业设计指导教师评阅书指导教师评语(基础理论及基本技能的掌握;独立解决实际问题的能力;研究内容的理论依据和技术方法;取得的主要成果及创新点;工作态度及工作量;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 指导教师签字: 年 月 日中国矿业大学毕业设计评阅教师评阅书评阅教师评语(选题的意义;基础理论及基本技能的掌握;综合运用所学知识解决实际问题的能力;工作量的大小;取得的主要成果及创新点;写作的规范程度;总体评价及建议成绩;存在问题;是否同意答辩等):成 绩: 评阅教师签字:年 月 日中国矿业大学毕业设计答辩及综合成绩答 辩 情 况提 出 问 题回 答 问 题正 确基本正确有一般性错误有原则性错误没有回答答辩委员会评语及建议成绩:答辩委员会主任签字: 年 月 日学院领导小组综合评定成绩:学院领导小组负责人: 年 月 日摘 要随着计算机技术和互联网的快速发展和日益成熟,用户可访问的数据资源日趋复杂,各种应用系统都面临着对企业资源进行有效安全管理的难题。目前国内在对权限管理方面技术的应用开发方面相对滞后,企业级应用系统中权限管理模块也存在很多的问题及缺陷,如:授权方式复杂,权限操作不灵活,缺乏通用性,权限访问控制粒度较单一等。因此,构建一个通用的用户权限管理组件,以满足日趋复杂的安全访问控制需求,已经成为企业应用系统安全访问控制领域内一项重要任务。本文提出的权限管理系统采用的是基于角色的权限管理方法,实现了不同用户进入系统具有不同的操作的权限分配操作,实现了权限分配工作的信息化、管理事务的一体化,使用户进入系统操作自动化。具有操作简单、界面友好、灵活性高、系统安全性高、运行稳定等特点,是系统管理人员进行权限管理的良好借鉴。关键词:权限管理;权限操作;角色ABSTRACTWith the developing and being mature of computer technology and Internet and The enlargement of the enterprise,the data sources that user can access are becoming More and more complicated. So it is a Problem for various enterprise-class applications that how to manage the enterprise resources in an effective safety way. Recently,the development of access Control Technology is lagging in China. There are a lot of Problems and defects of the access control model in enterprise-class application. For example,the method of authorization is complicated,The operating of Access is inflexible,commonality is lacking,and the granularity of access control is simple, and so on. As a result, it is a very important task in the security access control field in China to construct a common management component for user access to meet the increasingly complex requirements of security access control. The privilege management system realized the different user to enter the system to have the different operation the privilege assignment operation, has realized the privilege assignment work information, the administration integration, caused the user to enter the system operation automation. Has the operation simply, the contact surface friendly, the flexibility high, the system security is high, moves steadily grades the characteristic, is enterprises system administration personnel carries on the privilege management the good model.KEY WORDS: Privilege Management; Privilege Operate; Role目 录1绪论11.1选题意义11.2研究现状11.3现在权限管理系统存在的问题分析22 可行性研究42.1社会可行性分析42.2 技术可行性分析42.3经济可行性分析42.4管理可行性分析43 需求分析53.1 面向对象的需求分析方法53.2权限管理系统描述53.2.1 用户操作63.2.2 管理员操作63.3用例建模63.3.1系统参与者63.3.2用例图63.3.3 用例规约84总体设计104.1概要设计104.1.1对象类型描述和类图104.1.2 类图134.2 详细设计134.2.1权限系统定义134.2.2权限系统目标134.2.3权限系统子系统设计144.2.4登录子系统154.2.5用户操作子系统154.2.6操作员操作164.3用例建模164.3.1时序图和协作图简介164.3.2时序图的绘制164.3.3 绘制时序图和协作图174.3.4 绘制活动图214.4 数据库逻辑结构设计224.4.1系统权限表234.4.2权限组表234.4.3角色表234.4.4角色权限表234.4.5员工表245 权限管理系统实现255.1权限管理系统实现的关键技术255.2权限管理系统实现过程255.2.1判断权限字符串是否包含某权限ID的方法255.2.2将两个权限字符串合并为一个的方法265.2.3对字符串进行加密和解密的方法265.3权限管理系统主要窗体设计285.3.1权限管理系统用户登录窗体的设计285.3.2 权限管理系统窗体主界面设计295.3.3 权限管理系统查询窗体设计305.3.4权限管理系统角色权限设置窗体设计315.3.5权限管理系统密码修改窗体设计33结论34参考文献35翻译部分36英文原文36中文译文42致谢47 中国矿业大学2011届本科生毕业设计(论文) 第3页1绪论在信息社会的知识经济时代,人与人之间更多是依赖高科技的电子产品来进行沟通。可是随着互联网的普及,随之而来的安全问题也越来越不容大家小视。如何是人们的信息更加安全,是一个摆在我们面前不允许回避的问题。1.1选题意义近年来,随着市场竞争的加剧以及计算机网络技术在制造企业中的广泛应用,企业的产品信息日益数字化,产品开发过程日益全球化,企业的传统组织形式和生产过程也发生了深刻变化。企业的组织形式将是跨地区、跨国家的虚拟公司或动态联盟,生产过程也离不开与国际市场的信息、技术、资源和产品的交换。这种以国际互联网为中心的产品开发模式,对企业产品数据的安全保密和信息共享提出了更高的要求。 如何在分布式并行处理环境下对产品数据进行安全有效的组织和管理,实现信息合理有序的流动,是企业在选择实施计算机支持协同工作系统或产品管理系统等软件系统时首要考虑的问题对于这种大型分布式数据库系统,正确的用户权限管理是保证企业产品数据信息安全性、准确性完整性和一致性的基础。权限系统一直以来是我们应用系统不可缺少的一个部分,若每个应用系统都重新对系统的权限进行设计,以满足不同系统用户的需求,将会浪费我们不少宝贵时间,所以花时间来设计一个相对通用的权限系统是很有意义的。1.2研究现状权限管理技术的理论研究开始于20世纪60年代末70年代初,所权限管理,就是通过某种途径显示地准许或限制访问能力及范围,从而限制对关键资源的访问,防止非法用户的侵入或者合法用户的不慎操作造成破坏。随着计算机技术和应用的发展,特别是互联网的发展,应用系统对于权限管理的需求开始迅速增加。在随后40年的发展历程中,人们在权限管理技术的研究方面取得了很大的成果,先后出现过多种权限管理访问控制技术。20世纪80年代到90年代初,自主权限管理自主访问控制技术、强制访问控制技术得到了美国国防部制定的橘皮书-可信计算机评估准则的认证。但是,近几年来,人们普遍感到DAC和MAC的权限管理技术无法满足现今日趋复杂的应用系统的安全需求。因此,基于角色的权限管理(RBAC),便成为人们研究访问控制技术的重点和热点。基于角色的权限管理出现于上世纪90年代初。1992年,David 和Richard Kuhn在Role- Based Access Control一文中首次给出了基于角色权限管理的基本概念,第一次引入了角色的概念并给出其基本语义,并率先对RBAC模型框架进行了形式化定义。1996年,美国乔治梅森大学的R.s发表的经典文献Role- Based Access control Models,提出了著名的权限管理96模型,该模型完整地描述了权限管理基本框架,将传统的权限管理模型根据不同需要拆分成四种嵌套的模型并给出形式或定义,极大地提高了系统的灵活性和可用性,奠定了基于角色的权限管理模型发展的基础。1997年,R.s等人又提出了一种分布式的权限管理管理模型ARBAC97,通过采用“角色范围”和“先决条件”的途径来授权管理角色。目前,国外从事权限理论研究的机构主要包括NIST和 George Mansion实验室。NIST主要进行RBAC及其相关模型的标准化制定工作, George Mansion实验室侧重于对RBAC、RBDM及其扩展模型的创建、形式化描述,评价分析,以及在WEB中的应用分析等问题的研究。国际上常用的RBAC标准是2001年由NIST和 George Mansion所发表的RBAC建议标准,该标准完整地定义了RBAC的基本模型和应用功能。国内方面,1994年华中理工大学马建平的硕士学位论文一种无干扰的访问控制模型拉开了国内对于权限管理技术研究的序幕此后,国内研究者在权限管理模型的基础上,提出了许多扩展的权限管理模型,如:基于权限管理96模型的基础上提出了新型RBAC,基于业务工作流和角色的访问控制模型(WRBAC),基于RBAC97模型的基础上提出了基于角色的多级权限管理模型等。其中,NRBAC模型具有接近现实世界和形式统一的优点;WRBAC模型结合了RBAC96模型和RBAC97模型,并引入业务工作流对象,描述了业务工作流对象对访问控制操作的影响;RBMHAC模型引入了“域”的概念,描述了角色之间的组合关系,并在此基础上实施授权管理和权限验证,以模拟现实世界中等级式权限体制。目前,国内从事权限管理理论研究的机构主要包括中国科学院软件研究所和华中科技大学计算机科学与工程系,他们主要对RBAC模型扩展和应用方面进行深入的研究总的来说,基于角色的权限管理模型理论己经趋于成熟,但由于应用环境和应用系统的差异性,使得对权限管理的实现很难有一个统一的解决方案,因此仍需要进行大量的研究工作来将权限的各种理论性模型付诸于实际应用中。本文主要在对权限管理技术进行深入研究的基础上,为满足现今日趋复杂的企业级应用系统用户权限管理的需求。1.3现在权限管理系统存在的问题分析目前大多数信息管理系统的权限控制都是从文件、数据库表等存取控制客体出发进行管理,这种权限管理方式没有考虑到实际企业的权限结构,缺乏层次。在一个企业中,员工的权限是根据其职位来划分的,具有层次性。而现有的访问控制和安全管理方式对于用户众多,权限复杂的系统存在着严重不足,这些访问控制最终落在对文件的存取控制。文件是客体,对它的存取控制信息一般是放在文件目录中。控制信息主要由3个位表示,分别记录了文件是否可读,可写,可执行。如在UNIX中,文件的存取控制用9个位来实现。这9个位分成3类,分别记录了文件所有者,文件的用户组所有者以及其他用户对于文件的存取控制信息,但是无法体现用户权限的层次关系。访问控制仍然是从客体角度来考虑的,对于用户数量大,职责多样的系统却难以应付。因为同一个文件有很多人都可以对其新建、读写、或删除,而每个人也可以对很多文件进行修改。如果某人的权限改变,比如解雇,则他以前可访问的所有文件都要进行实时修改,显然这是复杂又难以实现的。另外应用系统一般提供的是对数据库的访问控制,这在应用系统的权限管理中是不够的。用户利用系统进行项目管理时,不仅要访问一些文档,还会执行很多操作。访问控制是通过某种途径显式地准许或限制访问能力及范围的一种方式,它是针对越权使用资源的防御措施,通过限制对关键资源的访问,防止非法用户的入侵或因为合法用户的不慎操作而造成损失,从而保证网络资源受控的、合法的使用。访问控制并不能代替身份认证,它是建立在身份认证基础之上的。换句话说,身份认证解决的问题是“你是谁”,而访问控制解决的问题是“能做什么,你的权限是什么”。权限管理系统在运行之初,必须为系统的每一个操作人员分配权限,但是作为一个大型企业的话,它具有庞大的用户群;另外,随着企业硬件设施的增加及改善,必将有更多的人成为其用户;同时,用户的调岗、离职、升迁等还涉及到权限的重新设置与分配,要为每一个用户分配其对所有受保护的数据资源(称为功能项)的操作权限,不仅工作量是非常大,而且很容易出现差错。因而如何简化权限的分配是系统设计必须考虑的重要问题。2 可行性研究可行性研究是对项目进行可行性调研和论证,确定项目开发的价值和意义以及是否可以付诸实施。其目的是在对比投入和产出的基础上考虑利用目前的资源、成本等因素能否实现一个系统以及是否会创造价值或带来实际的意义。可行性分析可行性分析一般可定义为,可行性分析是在建设的前期对工程项目的一种考察和鉴定,对拟议中的项目进行全面与综合的技术、经济能力的调查,判断它是否可行。2.1社会可行性分析通用权限管理系统的开发 符合国家法律 ,能够与社会大系统实现良好的对接。2.2 技术可行性分析开发通用权限管理系统具备所需要的条件。开发通用权限管理系统使用的MS Visual Studio 2008系统开发工具。Windows系列操作系统已经是普遍使用的系统,所以在技术上是成熟的。2.3经济可行性分析开发通用权限管理系统只需普通配置的计算机,在开发经费上没有问题。开发通用权限管理系统所投入的资金与系统投入使用后所带来的经济效益相比较,通用权限管理会给信息管理系统带来一定的经济效益。2.4管理可行性分析通用权限管理系统现行的管理体制具有现代化的管理意识和管理水平。在系统中,每个人都有自己的用户名和密码,因此在管理上可行。综上所述,开发通用权限管理系统在目标上 、技术上 、经济上 、管理上都是可行的。3 需求分析需求分析是软件开发的重要阶段。在需求分析阶段我们可以理清思路、澄清概念,最终形成一个完整的、清晰的、一致的系统需求,来帮助我们更好的进行系统开发,实现系统功能,满足用户需求。3.1 面向对象的需求分析方法面向对象分析获得系统功能需求的方法与传统软件工程过程中需求分析的不同。其核心内容包括:划分子系统、确定参与者(角色,可以是人也可以使其他子系统)并明确其关系、获得参与者用例并明确用例之间的关系、绘制用例图。用例图即最终获得的系统用例模型,该图应当能够将系统中所有的功能需求或者其中某一方面的功能需求表达出来,所有这些用例图所表达的功能之和应该同用户提出的功能相吻合。(1)划分子系统一个复杂的系统往往通过功能划分为若干小的模块,称为子系统。划分子系统的目的是使复杂的问题简单化。每个子系统还可以再划分子系统,所有这些子系统都被看作是对象进行数据(字段和属性)和操作(方法)的封装。(2)确定参与者参与者是指与系统交互的人或其他程序,是所有用例的执行者。在UML中使用一个人形的图标表示。需要注意的是参与者不是指人或其他程序本身,而是指它在系统中扮演的角色,比如小明是以系统管理员的身份登录系统,参与者就是系统管理员。(3)获取用例 从用户的角度来看,一个用例(USE CASE)就是参与者完成的一项不可再分割功能,比如注册到一个网站。UML对用例的标准定义如下:用例是对包括变量在内的一组动作序列的描述,系统执行这些动作,并产生传递特定参与者的价值的可观察结果。用例之间的关系主要包括泛化、包含、扩展三种。(4)绘制用例图用例图(USE CASE DIAGRAM)由参与者(Actor)、用例(USE CASE)、关系(RELATIONS)和系统边界等元素组成。其中关系包括用例之间的关系、参与者之间的关系、参与者和用例之间的关系。参与者之间的关系主要是泛化,因为参与者也是参与到系统中的类。参与者和用例的关系就是简单的关联。3.2权限管理系统描述权限管理是一个软件非常重要的组成部分。一个完善的信息管理系统,关系到很多部门。他们各尽其责,互相配合,互相制约。所以,我们的电脑软件权限要细分,才能满足用户的需求。我们的系统采用两级权限管理,先分用户角色,每个角色分派一定权限,权限的功能可以大部门是控制到窗口级,部门窗口限制还达到按钮级。然后每一个用户可以扮演某一个角色或多个角色,从而构成了我们严密的权限分级系统。权限管理严密,安全性高,支持加密。安全权限可以细化到字段,真正实现了不同级别的人看不同的文件,实现一次登陆全网通行。下面就来介绍一下权限管理系统操作的具体情况。3.2.1 用户操作(1) 根据自己的喜好,对用户密码进行改动,并存入数据库。(2) 根据用户需要,在自己的权限内对系统的数据库进行查询,获得所需的数据。(3) 根据用户的角色代码,使用户在进入主界面的时候进入相应的部门操作。3.2.2 管理员操作(1) 根据企业的用人要求,给员工分配权限,把用户的资料输入数据库中存储起来。(2) 当用户的职位发生改变的时候,及时更新用户资料,再把新资料存档。(3) 根据企业发展情况,对企业的权限、角色进行细分,可以进行相应的增。加、删除与修改。3.3用例建模在确定了系统中的角色以后,进一步分析系统需求,按照角色不同得到系统用例。3.3.1系统参与者(1) 管理员:管理日志,增加、删除、修改角色,增加、修改、删除部门为用户分配权限等等管理用户操作。(2) 用户:在管理员分配的权限内进行操作。3.3.2用例图系统管理员的角色用例如下:(1)应用列表管理:添加应用列表。(2)应用模块管理:新增应用模块,并且给应用模块分类。(3)用户资料管理:新增用户、用户资料查询和修改用户资料。(4)部门资料管理:新增部门、排序子部门、修改部门资料和移除本门资料。(5)角色资料管理:新增角色、修改角色、给角色新增应用和给角色设置限。(6)应用字段设定:设置字段。(7)事件日志管理:日志查询。(1)系统管理员的总用例图如下:图3.1系统管理员的总用例图(2)管理员对角色管理用例图图3.2管理员对角色管理的用例图(3) 管理员对部门管理用例图图3.3管理员对部门操作的用例图(4) 管理员对用户管理用例图图3.4管理员对用户管理模块操作用例图用户在权限管理系统中拥有管理员赋予的权限,能在自己权限内进行操作,因此用例图与管理员的用例图大同小异,在此就不用再画出来了。3.3.3 用例规约 用例规约的内容如下所示。用例名称:用来指定用例名称。用例描述:用来简单说明用例的作用。前置条件:在执行用例之前系统必须处于的状态。事件流:系统完成用例执行所需要的所有操作。后置条件:在用例执行结束以后系统必须处于另一状态。(1)修改密码用例规约用例名称:修改密码。用例描述:用来修改管理员或者用户登录时的密码。前置条件:管理员或者用户在系统中。事件流:a管理员或者用户进入个人设定。b输入原始密码验证密码是否正确,正确进入下一步否者修改密码失败。c输入新密码。d再次输入新密码。e验证两次密码输入一致否则修改密码失败。f提交到数据库提示密码修改完成。后置条件:密码修改成功。(2) 用例名称:设定权限用例规约。 用例描述:管理员给用户设定一定的权限使用户在权限内能进行部分操作 前置条件:在系统内。 事件流: a管理员登录系统进入角色管理页。 b打开一个角色,点击修改角色权限。 c修改角色权限然后点确定。 d提交数据库权限设定完成。后置条件:权限设置成功。 (3) 用例名称:新增用户用例规约 。 用例描述:新增加一个用户。 前置条件:在系统内。 事件流:a管理员进登录系统进入部门资料管理。 b打开新增用户按钮。 c输入用户名和用户密码, 设定用户类型。 d 提交数据库,新增用户完成。后置条件: 新增用户完成。 (4) 用例名称:新增部门用例规约 用例描述: 管理员新增一个部门。 前置条件: 在系统内。 事件流: a管理员登录系统进入部门资料管理。 b点击新增用户按钮。 c输入新增部门名称。 d提交数据库新增不猛成功。 后置条件:新增部门完成。 4总体设计完成系统的对象模型,包括系统的类图(CLASS DIAGRAM)和对象图的绘制。类图表示不同实体如何彼此相关,它主要是显示了系统的静态结构。对象图显示一组对象和他们之间的关系。4.1概要设计类图由许多静态的说明性元素组成,它显示出类、接口以及他们之间的静态结构和关系。其最基本结构是类和接口,此外还有他们之间的关系,此外类图还显示其内部结构。4.1.1对象类型描述和类图(1) EventMessage 日志消息类该类主要是记录用户的登录信息如 ID、用户名、客服端IP、事件类型、应用名称、模块名称和登录时间。也可以查询用户的登录信息。其中查询的时候可也根据用户ID、用户名和登录时间查询;其中查询时间可也是一个时间段。其类设计图如下:图4.1日志消息类图(2) BusinessFacade 逻辑类 该类的主要作用是执行增加、修改、删除等操作,以及操作后的返回功能。其中包括角色、权限、用户的增加、修改和删除。其设计图如下、图4.2逻辑类图(3) CacheOnline 用户在线类该类的主要作用是记录用户的登录时间从而获取在线用户的列表,在用户列表中插入新登录用户,并且更新用户列表。检查用户是否在线。其类设计图如下:图4.3逻辑类图(4) CheckUpdate 检查更新类 检测是否有最新版本并返回最新版本。设计图如下:图4.4检查更新类图(5) FileTxtLogs 文本日志文件操作类 该类主要作用是记录写操作文件日志,以及判断写操作文件日志是成功还是失败。记录日志文件内容,获取日志文件目录。设计图如下:图4.5文本日志文件操作类图(6) FrameSystemInfo系统信息操作类 对系统各种信息进行操作,设计图如下:图4.6系统信息操作类图(7) FrameWorkLogin 登陆类 该类主要作用是检测用户名和密码是否正确,判断正确用户进入界面,错误提示用户登录失败。设计图如下:图4.7登录类图(8) FrameWorkPermission 权限检测类该类的主要作用是检测在线用户缓存、应用启动时间、版本等等。权限检测成功后,用户能在相应的权限内进行操作,设计图如下:图4.8权限检测类图4.1.2 类图图4.9类之间的关系图4.2 详细设计系统设计是信息系统开发过程中的另一个重要阶段。我们要根据之前进行分析的结果,在系统需求分析的基础上,来进行对系统的设计4.2.1权限系统定义在一个系统中包含了企业正常运转所需要的重要数据。一个企业中由于每个员工的不同,所允许接触到的数据是不同的。如何使每个员工都能方便的访问他在工作中所需要的数据,同时屏蔽不允许他们访问的数据,这就需要对用户进行访问控制。访问控制是根据需要批准或者禁止用户访问企业数据的过程。访问控制的关键概念是权限。权限定义了授予或者禁止用户对某部分数据的访问类型。权限可以应用到任何受到保护的数据对象。设置权限,就是为用户指定相应数据的访问权限。4.2.2权限系统目标权限管理的方式有很多种,但是对于本系统而言,我们采用了如下描述的权限系统。首先,把权限系统分为角色、功能组、基本权限三层。其次,根据企业的需要,对所有可能的操作进行详细划分,确定所有的基本权限。最后,把相关的权限可以组成功能组,把几个功能组组成一个角色。一个用户可以充当几个角色。通过这样一个分层之后,整个权限管理系统可以灵活、有效的对用户访问系统数据进行控制,对用户操作进行管理。权限管理系统的目标是实现以上所描述的权限管理。首先,根据对系统的分析,确定系统的所有基本权限。然后在这个基础上,给系统的权限系统管理员提供灵活的组织、安排功能组和角色以及给用户分配相应的角色的功能。4.2.3权限系统子系统设计根据权限系统的定义和项目目标,权限管理系统的子系统有:功能组管理、角色管理以及用户角色分配功能三大块,同时还应该提供根据权限分配检查特定用户是否具有某项基本权限的接口,以及所有用户都适用的密码修改以及查询功在线用户管理和日志管理等等。系统管理模块如图4.10所示。图4.10系统功能模块通过上面的分析,我们在对权限管理系统的研究和开发中可以清楚的了解到在角色获得的权限是功能权限则能实现系统功能;如果是实体权限,则选择实体对象。同时某个用户获得了该角色,可以对实体对象进行具体权限操作,然后修改权限,刷新权限记录,直至权限管理完成。具体权限实施流程如图4.11所示。图4.11 权限实施流程图4.2.4登录子系统登录子系统是每个系统都应该具备的模块,登录界面是进入系统的前提。在本系统设置的登录界面中,需要用户输入正确的用户名和密码。在系统中我使用了一个下拉框,里面载入了所有的用户名。这样的话在登录的时候用户可以在其中找出自己的用户名或者是自己进行输入。而当用户名和输入的密码不符时,将出现对话框来提示用户“密码错误,请重新输入”。4.2.5用户操作子系统在用户操作子系统中,我主要设计了对系统信息的查询功能和对系统信息的维护功能。在系统信息查询方面,主要特点是支持对整体系统的查询和具体的查询。用户可以根据自己的需要来对系统进行查询。比如说,用户可能会想要知道什么样的角色会有怎么样的权限,某个同事具体拥有什么样的权限之类的,这样的话就可以通过查询操作来了解。在查询模块中,用户根据自己想要了解的内容来对具体操作进行选择。在对系统信息维护方面,主要是对用户密码的修改。由于用户最初在使用系统的时候是由系统操作员统一的分配权限以及对用户的信息进行初始化,即对密码和权限的赋予。权限是不可以照着用户的意念改变,但是密码可以。用户可以根据自己的喜好与习惯来对密码进行设置,并替换原来的密码存储到用户信息中。4.2.6操作员操作这个子系统是整个权限管理系统的核心模块。权限管理系统的核心就是对用户的权限进行管理,而具体实行权限管理的就是系统操作员。所以为了简化对权限管理,我们把对权限系统的管理具体分为三个小模块,分别是对用户管理的模块、对角色管理的模块以及对权限组管理的模块。由于企业是动态的,总是有人在内部不停的流动。他们可能是新进人员、可能是离职人员、可能升迁、可能降级,这些情况都是随时可能发生的。但是只要有人员的位置发生变动,那么他的相应资料就会随之改变。这个时候系统操作员就可以根据人员位置的具体改变来选择相应的模块来对企业员工信息进行管理,并把员工的新资料存储到数据库中。4.3用例建模系统的类模型主要是反映了系统中各个类或接口之间的调用关系和类的内部结构。不同于静态模型,系统的动态模型反映的是系统中各个对象之间的交互信息。系统的动态模型主要包括:时序图、状态图、活动图和协作图四种图形。4.3.1时序图和协作图简介(1)时序图(Sequence Diagram)可以用来显示一个具体的用例或用例的一部分的详细流程。其详尽的显示了不同对象之间的消息传递顺序和调用关系。时序图有两个维度:水平维度是互相通信的对象,垂直维度代表时间。(2)协作图(Collaboration Diagram)与时序图类似,用来表达对象之间的合作和交互,但与时序图重点强调消息发送顺序不同,协作图重点突出的是上下文关系,其由Rose根据时序图自动生成。4.3.2时序图的绘制时序图由角色、对象、生命线、激活期和消息五种元素组成。(1) 角色角色可以是外部参与者系统中其他程序。(2) 对象对象在时序图中用矩形表示,在命名时可以使用对象名:类名的形式,也可以不带类名。如图19中站点管理员就是一个对象(3) 生命线生命线是指对象的存在时期,在时序图中表示为代表对象的方框下面的一条虚线,对象之间的消息在两条生命线之间。如图19中站点管理员和登录页面下的虚线就分别是这两个对象的生命线。(4) 激活期激活期表示系统中对象执行某个操作的一段时间,在时序图中以窄矩形表示。如图下图中的矩形框就是两个对象的激活期。(5) 消息消息是各个对象之间进行通信的媒介,消息在时序图中位于两个对象的生命线之间,使用有向箭头表示。如图19中有向将头就是一条消息。4.3.3 绘制时序图和协作图(1) 登录功能时序图 图4.12登录功能时序图(2)登录功能协作图图4.13登录功能协作图(3)部门资料管理时序图图4.14部门资料管理时序图(4)部门资料管理协作图图4.15部门资料管理协作图(5)角色管理时序图图4.16角色管理时序图(6)角色管理协作图图4.17角色管理协作图(7)权限设定时序图图4.18权限设定时序图(8)权限设定协作图图4.19权限设定协作图其他功能时序图与角色管理时序图大同小异,这里就不一一列举了4.3.4 绘制活动图(1)角色管理活动图如下图4.20角色管理活动图(2)用户资料管理活动图图4.21用户资料管理活动图4.4 数据库逻辑结构设计概念结构设计是独立于实际数据模型的信息结构,必须将其转化为逻辑结构后才能进行数据库应用的设计。设计数据表的主要原则是符合3NF,3NF即所有的非键字段依赖而且仅仅依赖于主键,而与主键之外的字段无关。第一种转化是将实体转化为关系表。这种转化比较简单,只需要将实体的属性定义为表的属性即可。第二种转化是联系的转化,即将各个实体之间的联系转化为表格之间的关系,如外键的定义。在上面工作的基础上归纳出通用权限管理数据库表格的组成、列的属性、属性之间的联系等。该数据库系统要求具有以下方面的特点:(1) 结构合理:对一个职员可以建立多条记录。(2) 所建立的数据冗余度小,独立性强。(3) 建档、修改、查询、统计快而准确。(4) 保密性、可靠性好。4.4.1系统权限表系统权限表描述了所有系统的基本功能。它其中的数据在实施阶段就已经导入,并且系统中不给所有的用户提供修改这个表中数据的功能。为了生成权限组表中的功能字符串,权限ID必须进行顺序编号,具体设计结构如表4.22所示。字段名类型长度是否为空说明gn_iint4not null权限IDgn_mcchar60null权限名称表4.22系统权限表4.4.2权限组表权限组表保存了系统所有权限组。用户定义的每个权限组在这个表中只有一条记录,具体结构设计如表4.23所示字段名类型长度是否为空说明gnz_iint4not null权限组IDgnz_mcchar60null权限组名称表4.23权权限组表4.4.3角色表角色表保存了系统所有角色的信息,每一个角色在表中有且仅有一条记录,并且具体的角色都是在一个相应的权限组中,具体结构设计如表4.24所示。字段名类型长度是否为空说明js_iint4not null角色IDjs_mcchar60null角色名称js_gnziint4null权限组ID表4.24角色表4.4.4角色权限表角色权限表保存了角色和权限之间的对应关系。每个角色包含的每一个权限在这个表中都存在一条相应的记录,具体结构设计如表4.25所示。字段名类型长度是否为空说明jsgn_iint4not null表IDjsgn_jsiint4null角色IDjsgn_gniint4null权限ID表4.25角色权限表4.4.5员工表员工表保存了企业所有员工的信息。员工表的主要维护工作应该是属于人力资源管理系统。在权限管理系统中,对于员工表的维护主要就是对登录名字和登录密码进行维护。对于每个企业人员来说,要使用ERP系统,必须首先在系统中注册一个登录名字以及设置登录密码,然后由系统操作员分配相应的权限,这些工作是在权限管理系统中实现的,具体结构设计如表4.26所示。字段名类型长度是否为空说明Per_iint4not null员工IDPer_namechar60null员工姓名Per_dlmmint20null登录密码Per_jsiint4null所在角色ID表4.265 权限管理系统实现出于对系统安全的重视,现在人们将眼光更多的投向了权限管理系统,但是由于实现系统安全的方式是多样的。在实现权限管理系统的过程中,出于对系统信息安全的考虑,我们在权限管理系统的开发中还要对权限字符串进行加密设置。5.1权限管理系统实现的关键技术在当今我们都越来越注重在获取对自己有用的信息的同时保护自己的信息不受损害,那么在一个大型的信息管理系统中这样的要求是尤为重要的。一个大型的信息管理系统不仅要面临着自己内部员工对它的操作,还面临着其他用户对它访问。如何保证自己系统本身的信息不受损害是一个十分重要的问题。在这样的环境下应用加密技术可以在一定程度上增大系统的安全性,它可以为我们进行一般的电子商务活动提供了安全保障。数据加密的基本过程,就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程5.2权限管理系统实现过程在我们这个系统中主要是对权限字符串进行判断。判断权限字符串是否包含了某一权限以及完成对几个权限字符串进行合并的操作,并在程序中提供这些函数供其他系统调用。同时为了系统的安全性,用户密码是以密文存储在数据库中的,其他系统也需要进行对用户密码是否正确进行判断,所以也要有字符串加密和解密函数。5.2.1判断权限字符串是否包含某权限ID的方法判断权限字符串的主要步骤是首先定位权限字符所对应的字符,然后判断对应位置的取值。如下图所示图5.15.2.2将两个权限字符串合并为一个的方法权限字符串合并的基本算法为:(1) 循环对两个权限字符串的前n位进行合并,合并的方法是求得两个字符的ASCII码的或运算,直到一个字符串的结束。(2) 将长度较长的字符串的末尾部分附加到结果字符串末尾。5.2.3对字符串进行加密和解密的方法在本例中,对字符串进行加密和解密的算法改编自Borland公司。加密算法的基本思想是利用预先给定的key与第一个字符进行异或运算,获得第一个字符的密文;再利用得到的密文字符与预先给定的常量对key进行变换,然后再利用新得到的key对第二个字符进行加密,如此进行,直到所有明文加密结束,得到与明文长度相同的密文。由于在加密过程中,可能产生一些不可见字符,在将这些字符存入数据库中容易导致异常,因此需要对算法得到的密文再次进行交换,即求得每个字符的ASCII编号的十六进制值转换为字符串,这样就得到了一个由09和AF组成的长度为原来字符串的两倍的密文。如下图所示图5.2解密算法是加密算法的逆运算。首先将由09和AF组成的密文转换为对应的ASCII码的字符串;然后利用预先给定的key与第一个字符进行异或运算,获得字符的明文;再利用密文、预先给定的常量对key进行变换,然后再利用新得到的key对第二个字符进行解密,如此进行,直到获得所有的明文。如下图所示图5.35.3权限管理系统主要窗体设计窗体是一种文档,可以用来收集信息、显示信息。通过建立一个友好的使用界面会给使用者带来很大的便利,让更多的使用者都能根据窗口中的提示完成自己想要实现的操作。这是开发一个系统的基本的要求,简洁大方的界面是我们在设计窗体的目标。5.3.1权限管理系统用户登录窗体的设计有了前面的数据库设计,功能设计后,就可以在MS Visual Studio 2008环境下进行功能模块设计了。下面将介绍主要功能模块窗体

温馨提示

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

最新文档

评论

0/150

提交评论