权限管理系统.docx
- 文档编号:8567360
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:29
- 大小:489.11KB
权限管理系统.docx
《权限管理系统.docx》由会员分享,可在线阅读,更多相关《权限管理系统.docx(29页珍藏版)》请在冰豆网上搜索。
权限管理系统
一、绪论………………………………………………………………………1
1引言………………………………………………………………………1
1.1设计目的……………………………………………………………1
1.2题目背景……………………………………………………………1
2任务描述…………………………………………………………………1
2.1目标…………………………………………………………………1
2.2运行环境……………………………………………………………1
3数据描述…………………………………………………………………2
3.1输入数据……………………………………………………………2
3.2输出数据……………………………………………………………2
4功能要求…………………………………………………………………2
二、需求分析…………………………………………………………………2
1需求调查…………………………………………………………………2
1.1业务需求调查………………………………………………………2
2功能需求…………………………………………………………………2
2.1功能划分………………………………………………………………2
2.2功能描述………………………………………………………………3
3数据描述…………………………………………………………………3
3.1数据描述………………………………………………………………3
3.2数据库描述……………………………………………………………4
3.3数据词典………………………………………………………………4
4运行需求…………………………………………………………………6
4.1用户界面……………………………………………………………6
4.2基本要求……………………………………………………………8
三、总体设计…………………………………………………………………9
1总体结构和模块设计……………………………………………………9
2数据结构设计……………………………………………………9
四、详细设计…………………………………………………………………11
1程序设计…………………………………………………………………11
五、系统实现………………………………………………………………12
六、安装及使用的说明……………………………………………………23
1安装步骤…………………………………………………………………23
1.1安装JDK………………………………………………………………23
1.2安装mysql……………………………………………………………23
1.3安装eclipse…………………………………………………………23
1.4安装tomcat…………………………………………………………23
2运行说明…………………………………………………………………23
七、设计总结…………………………………………………………………24
八、参考文献………………………………………………………………25
一、绪论
1引言
1.1设计目的
任何系统都离不开权限的管理,有一个好的权限管理模块,可以大大方便公司的管理。
对角色进行权限分配。
对于一个大企业的业务系统来说,具有非常高的效率。
如果要求管理员为公司下属员工逐一分配系统操作权限的话,是一件耗时且极其繁琐的事情。
所以,系统实现了对角色分配权限的操作,将权限一致的人员编入同一角色中,然后对该角色进行权限分配,加快了员工权限分配。
在B/S系统中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很容易就能通过浏览器轻易访问到B/S系统中的所有功能。
因此B/S业务系统都需要有一个或多个权限系统来实现访问权限检测,让经过授权的用户可以正常合法的使用已授权功能,而对那些XX的“非法用户”将会被“拒之门外”。
1.2题目背景
不同职责的人员,对于系统操作的权限应该是不同的。
优秀的业务系统,这是最基本的功能。
权限管理,一般指根据系统设置的安全规则或者安全策略,用户可以访问而且只能访问自己被授权的资源。
权限管理几乎出现在任何系统里面,只要有用户和密码的系统。
所以产生了权限管理的概念。
2任务描述
2.1目标
系统的目标包括如下三点
(1)对应用系统的所有资源进行权限控制,比如应用系统的功能菜单、各个界面的按钮控件等进行权限的操控。
(2)实现用户、角色权限分配,不同权限用户能访问的页面不相同。
(3)开发人员开发新的系统功能,通过权限和角色模块进行操作管理。
使用系统管理员身份登录,可以给用户分配不同的权限。
(4)实现资源的管理,每个资源都对应着责任人信息,统计每个部门资源使用,这样可以根据部门的大小进行合理的资源分配,不会造成资源的浪费。
而且资源是分配到部门的,容易管理,不会轻易丢失。
2.2运行环境
表1运行环境表
数据库
mysql
开发环境
eclipse
运行环境
jdk+tomcat
系统
window7
数据库管理
SQLyogEnterprise
浏览器
IE8
3数据描述
3.1输入数据
输入数据:
用户在登录界面输入员工的用户名和密码信息。
3.2输出数据
根据当前登录的用户id,从数据库的角色用户关联表查看当前用户所属的角色,根据角色权限表,获取角色所拥有的权限,返回用户所拥有的权限,根据用户所拥有的权限,返回可以访问的界面和按钮,如下图所示。
图1输出效果图
4功能要求
系统能够根据不同的用户id返回不同的访问页面,屏蔽用户没有操作权限的系统功能,在员工的职位变迁的时候,管理员能够方便将用户与新的角色进行绑定,快速实现用户权限的分配。
为了更方便的权限的管理,根据角色来进行权限分配,形成不同的角色,也就是角色权限管理。
比如创建一个新的角色,给这个角色分配相应的权限等。
用户管理,用户管理要求能够实现管理员对用户的管理,是对权限管理系统控制资源的主体进行有效管理的一个系统工具。
用户管理的需求描述如下,添加一个新的用户、查看用户列表、删除一个或多个用户、可以查看用户的基本信息、和查看用户所具有的权限。
用户角色管理,用户角色管理是权限管理系统中的一个重要部分,它管理和维护用户与角色之间的关系,因而对用户来说,如果不为用户分配角色,那么就算用户进入了企业信息系统,系统也不会向它提供任何可以访问页面的。
为用户分配角色是用户可以访问系统资源的第一步。
用户角色管理的需求描述如下,能够为一个用户赋予角色、即向用户分配一个角色、可保存用户角色分配信息、撤销角色,即给某一个用户撤销一个或多个角色、可载入可用的角色列表、可查看角色的权限,即用户点击某一个角色,可以动态地加载该角色所具有的权限。
角色权限管理,角色权限管理要求能够实现对角色的权限进行管理。
在访问控制方面要求能够对系统的访问权限进行有效的控制,要防止非法用户直接在IE的地址栏中输入内部页面地址进行对系统资源的访问。
角色权限管理是权限管理系统对角色主体进行有效管理的一个系统工具。
角色权限管理的需求描述如下,新添一个角色,即管理员可以向系统中添加一个新的角色、可载入可用的角色列表、可删除一个或者多个角色,如果该角色的已经分配了权限或者已经属于某个或某些用户时,同时也要删除角色与权限和用户与角色之间的关联、可撤销某个角色的一项或多项权限、可为角色赋予一项或多项权限,即给一个角色添加一项或多项权限、可保存角色权限信。
二、需求分析
1需求调查
1.1业务需求调查
本系统需要四个模块,包括角色管理模块、用户管理模块、权限管理模块和资源管理模块。
需要提供前台访问页面,前台页面使用Jsp技术实现,后台实现使用框架Spring、Strut2和Hibernate完成系统开发。
图2系统需求图
2功能需求
2.1功能划分
用户管理,给不同的角色赋予不同的权限。
角色管理,通过注册用户信息成为此公司的一个员工,管理员可以给这个用户分配角色,使当前用户拥有相应的权限。
权限管理,当系统添加新的功能时,通过权限管理将新功能的访问权限添加到系统中。
资源管理,给公司的不同部门分配电脑,通过将电脑信息与员工信息关联起来,将资源分配到不同的部门中。
2.2功能描述
根据系统用例来划分功能模块,实现系统的应用管理,包括系统设置、用户管理、角色管理、资源管理。
模块之间的关系如下图:
图3功能描述图
3数据描述
3.1数据描述
权限管理系统主要有八张表组成,包括电脑信息表computer、机构信息表unit、员工信息表employee、部门信息表department、角色信息信息表role、角色用户信息表role_user、权限信息表permission和权限角色信息表per_role。
图4数据描述图
3.1数据库描述
权限管理系统八张表的,一个机构拥有多个部门,一个部门拥有多个员工。
每个角色具有不同的权限,一个员工一种角色,一个部门拥有多台电脑,这些表之间的E-R关系如下图所示。
图5数据库E-R图
电脑表(编号,所属用户,用途,电脑属性,购买时间)
部门表(编号,部门描述,部门名称)
机构表(编号,机构描述,机构名称)
员工(编号,名字,工作岗位,工资)
角色用户(员工编号,角色标号)
角色(编号,角色名称,角色描述)
权限角色(角色编号,权限编号)
权限(编号,权限名称,权限描述)
3.2数据词典
本系统数据词典涉及的表有,电脑信息表computer,机构信息表unit,部门信息表,员工信息表employee,角色信息表,用户角色信息表user_role,权限信息表permission,权限角色信息表per_role,基本信息如下八个表所示。
表2电脑信息表
表名
电脑信息表computer
简述
存储computer表的基本信息
组成
使用人编号+部门编号+电脑的基本信息
输入
通过创建computer获取数据
输出
查询部门电脑使用统计,查看使用
表3机构信息表
表名
机构信息表unit
简述
存储unit表的基本信息
组成
机构编号+机构描述+创建时间
输入
通过创建unit获取数据
输出
查询机构,分配部门使用
表4部门信息表
表名
部门信息表department
简述
存储department表的基本信息
组成
所属机构+部门地址+部门描述
输入
通过创建department获取数据
输出
查询部门,给部门分配电脑
表5员工信息表
表名
员工信息表employee
简述
存储employee表的基本信息
组成
个人基本信息+所属部门
输入
通过添加员工信息获取数据
输出
为员工分配权限,给员工分配电脑
表6角色信息表
表名
角色信息表role
简述
存储role表的基本信息
组成
角色编号+角色名称+角色描述
输入
通过创建角色获取信息
输出
为员工分配不同的角色
表7角色用户信息表
表名
角色用户信息表role_user
简述
存储role_user表的基本信息
组成
角色编号+用户标号+创建时间
输入
给员工分配角色时获取信息
输出
赋予员工相应的角色
表8权限信息表
表名
权限信息表permission
简述
存储permission表的基本信息
组成
权限编号+访问路劲+权限描述
输入
给角色分配权限时获取信息
输出
赋予角色相应的权限
表9权限角色信息表
表名
权限角色信息表per_role
简述
存储per_role表的基本信息
组成
权限编号+角色编号+创建时间
输入
给角色分配权限时获取数据
输出
用户登录系统获取相应权限
4运行需求
4.1用户界面
系统的登录界面。
用户可以在这个页面中输入自己的员工编号和密码,点击登录进入此系统,后台会从这个表单中读取工号和密码,根据工号查看数据看用户是否存在,根据密码验证是否正确登录,如下图所示。
图6用户登录页面
当前登录用户所拥有的权限,以分页形式显示,当前每页显示三条信息,可以根绝自己的使用情况进行调节。
提供上一页和下一页按钮,当有很多页的情况下,用户可以选择跳转到多少页,分页信息采用动态显示,如下图所示。
图7用户权限图
角色授权页面,给以选择一种角色,左边的框里为当前所选角色不具有的权限,右边的框里为当前角色拥有的权限。
图8角色权限授权图
给角色授权后,能看到角色拥有的权限列表,以分页形式显示,格式如下图,admin角色拥有的权限在邮编的边框中显示。
图9角色拥有权限列表
给用户授权角色页面,首先选择要授权的用户,然后再选择要给当前选中的用户赋予什么样的角色。
图10用户角色授权图
资源管理界面,通过这个界面可以查看公司中电脑的使用情况,当电脑所属用户的信息发生变更的时候,也可以通过这个页面进行编辑。
图11电脑资源分配图
机构设置页面,通过这个页面可以创建一个新的部门,也可以删除已经不存在的部门,通过此页面也可以编辑部门的信息。
图12部门信息图
部门设置页面,通过这个页面可以创建一个新的机构,也可以删除已经不存在的机构,通过此页面也可以编辑机构的信息。
图13机构信息图
4.2基本要求
1)体系结构:
采用B/S(Broswer/Client)结构。
2)操作系统:
Windows系列。
3)数据库管理系统:
mysql。
4)开发工具:
eclipse。
三、总体设计
1总体结构和模块设计
1.1功能结构
用户管理模块流程图,首先用户注册信息,然后管理员进行信息的审核,如果该员工的信息是正确的,那么管理员根据当前用户的职位分配相应的角色,如果信息不正确,审核不通过,用户信息将会被删除,用户在未分配角色之前,不具有任何的权限,无法登录此系统。
图14用户管理流程图
权限管理模块流程图,根绝登录用户的信息从数据库中查找用户的角色,再根据角色信息查找拥有的权限,最终返回用户拥有访问权限的页面。
图15用户授权流程图
2数据结构设计
本系统涉及的表有员,工信息表employee,电脑信息表computer,机构信息表unit,部门信息表,角色信息表role,用户角色信息表user_role,权限信息表permission,权限角色信息表per_role,如下面表所示。
表10员工信息结构表
名称
列名
数据类型
长度
允许空
员工id编号
work_id
varchar
10
员工名称
name
Vachar
30
登录系统密码
password
Varchar
50
上级部门
dept_id
Varchar
20
工作岗位名称
jobname
Varchar
11
工资
salary
Varchar
30
允许
表11权限角色信息结构表
名称
列名
数据类型
长度
允许空
角色id编号
role_id
varchar
10
权限id编号
permission_id
Vachar
30
授权人id号
certigier_id
Varchar
50
授权时间
create_time
Varchar
20
表12权限信息结构表
名称
列名
数据类型
长度
允许空
权限名称
per_name
varchar
10
权限描述
per_content
Vachar
30
权限对应路径
per_path
Varchar
50
授权人id号
certigier_id
Varchar
20
授权时间
create_time
Varchar
11
表13角色信息结构表
名称
列名
数据类型
长度
允许空
角色名称
role_name
varchar
10
角色描述
role_describe
Vachar
30
授权人id号
certigier_id
Varchar
50
授权时间
create_time
Varchar
20
表14用户角色信息结构表
名称
列名
数据类型
长度
允许空
员工id编号
user_id
varchar
10
角色id编号
role_id
Vachar
30
授权人id号
certigier_id
Varchar
50
授权时间
create_time
Varchar
20
四、详细设计
1程序设计
权限管理系统分为四个模块
1)用户管理模块,通过审核管理,保证非法用户不能进入此系统,提供用户注册页面,用户注册完后,需要管理员进行审核并赋予相应的权限,新的用户才能登入此系统。
2)角色管理模块,通过给不同的角色分配不同的权限,使得用户权限的分配得到了极大的简便,只需要给新的用户分配相应的角色,就能让用户拥有此角色拥有的权限。
同时在员工职位变化的时候,能够很容易实现用户角色绑定。
3)权限管理模块,保证了信息的安全,每一个功能都有相应的权限,只有拥有相应的权限才可以进行访问。
4)资源管理模块,每一台电脑分配到哪一个部门都有相应的记录,保证了资源的合理利用,也不会造成资源的无故丢失。
五、系统实现
Strut2配置文件strut.xml
xmlversion="1.0"encoding="UTF-8"?
>
DOCTYPEstrutsPUBLIC
"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN"
"http:
//struts.apache.org/dtds/struts-2.0.dtd">
--指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法-->
--该属性指定需要Struts2处理的请求后缀,该属性的默认值是action,即所有匹配*.action的请求都由Struts2处理。
如果用户需要指定多个请求后缀,则多个后缀之间以英文逗号(,)隔开。
-->
--配置自定义属性文件-->
--设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭-->
--当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开-->
--开发模式下使用,这样可以打印出更详细的错误信息-->
--默认的视图主题-->
Spring配置文件beans.xml
xmlversion="1.0"encoding="UTF-8"?
>
//www.springframework.org/schema/beans" xmlns: xsi="http: //www.w3.org/2001/XMLSchema-instance" xmlns: context="http: //www.springframework.org/schema/context" xmlns: aop="http: //www.springframework.org/schema/aop" xmlns: tx="http: //www.springframework.org/schema/tx" xsi: schemaLocation="http: //www.springframework.org/schema/beanshttp: //www.springframework.org/schema/beans/spring-beans-2.5.xsd http: //www.springframework.org/schema/contexthttp: //www.springframework.org/schema/context/spring-context-2.5.xsd http: //www.springframework.org/schema/aophttp: //www.springframework.org/schema/aop/spring-aop-2.5.xsd http: //www.springframework.org/schema/txhttp: //www.springframework.org/schema/tx/spring-tx-2.5.xsd"> component-scanbase-package="com.zbm"/> annotation-config/> --使用配置文件声明一个数据源-->
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 权限 管理 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)