1、 本 科 毕 业 论 文 单点登录系统 下 用户权限控制 的 设计和实现 Design and Implementation of Authorization in A Single-Sign-On System 姓 名: 学 号: 学 院:软件学院 系:软件工程 专 业:软件工程 年 级: 校内 指导教师: 年 月 摘 要 随着互联网的飞速发展,传统的 基于用户名和密码的身份认证机制在不断增多的网络应用下已经表现出了明显不足,单点登录解决方案在这种情况下应运而生而。单点登录就是针对集中式的身份认证 和授权 管理提出的一个整合了不同系统的一个解决方案。 单点登录 (Single Sign On
2、),简称 SSO,是目前比较流行的企业业务整合的解决方案之一,是指在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统 1。 单点登录主要包括身份鉴别及用户授权两个方面。身份鉴别是指证实一个用户的身份是否有效的过程 2,用户权限管理是指给这个用户一定的权限来访 问系统资源。 单点登录系统可以实现用户一次登录便能在所有应用系统之间自由穿行,而不需要进行多次身份认证,建立了一种更安全的登录方式,并且 将多个系统独立的用户管理融合为统一的用户管理 ,简化了管理员的工作 。单点登录系统的实施可以提高管理员的工作效率,提高用户体验,并且降低开发和管理的成本,因此在应用系统不断增多的情况下
3、越来越流行。 本文将在单点登录系统中设计并实现一个合理的用户权限管理模块,将分散于各个应用系统的具有不同权限管理策略的用户管理集中到同一个模块中,进行集中式管理 。 关键词: 单点登录 权限控制 授权 Abstract With the rapid development of Internet, the traditional user name and password based authentication mechanism has shown its drawbacks under the fast growing of network applications . Single-
4、Sign-on solution emerges to response to this request. Single sign-on is a solution to integrate different systems for the centralized identity management. Single-Sign-On, referred to as SSO, is one of currently popular enterprise business integration solutions, users need only log on once to access
5、all the applications of trusted sytems .SSO mainly consists of two aspects, identification and authorisation. Identification means to verify whether the users identity is validate, and authorization means to give the user some right to get access to the resources of the systems. Single sign-on syste
6、m allows the user a single login for all applications and can freely walk around without typing the username and password again and again. It establishes a more secure login, integrates multiple user management system into an independent user manegement service.The implementation of the SSO system c
7、an increase administratorss efficiency ,improve the user experience and reduce the development and management costs . It becomes more and more popluar as the applications increase. This thesis will design and implement a reasonable centralized user rights management module in a Single sign-on system
8、.It will bring together the scattered user management modules with different stategies in various applications into a centralized user management module. Key words: single-sign-on;access control;authorization 目录 第一章 绪论 . 1 1.1 研究背景及意义 . 1 1.2 研究内容 . 2 1.3 预期目标 . 2 1.4 论文的组织结构 . 3 第 二 章 模型及主要技术介绍 . 5
9、 2.1 RBAC 模型 . 5 2.1.1 自主访问控制 . 6 2.1.2 强制访问控制 . 6 2.1.3 基于角色的访问 控制 . 7 2.2 SSH 框架介绍 . 8 2.2.1 Spring 简介 . 8 2.2.2 Struts 简介 . 10 2.2.3 Hibernate 简介 . 12 2.3 Cookie 技术简介 . 13 2.4 JavaScipt 简介 . 13 第三章概要设计 . 15 3.1 系统需求分析 . 15 3.2 运行环境: . 16 3.3 基本流程: . 17 3.3.1 身份认证流程 . 17 3.3.2 用户授权流程 . 18 3.4 系统结构
10、设计 . 19 3.5 接口设计 . 20 3.5.1 用户接口 . 20 3.5.2 外部接口 . 21 3.5.3 内部接口 . 21 3.6 系统出错处理设计 . 24 3.7 系统用例设计 . 24 第四章详细设计及实现 . 27 4.1 系统组件图 . 27 4.2 系统部署图 . 27 4.3 系统类图 . 28 4.4 用户权限控制主要流程 . 30 4.4.1 用户操作权限验证 . 30 4.4.2 SSO 管理员用户权限管理流程 . 31 4.4.3 应用系统管理员用户权限管理流程 . 32 4.5 系统数据结构设计 . 32 第 五章测试结果及分析 . 36 5.1 软件测
11、试概述 . 36 5.2 测试用例设计 . 36 5.2.1 用户操作权限验证 . 36 5.2.2 SSO 管理员用户管理功能测试 . 36 5.2.3 应用系统管理员的用户管理功能测试 . 38 5.3 系统运行结果 错误 !未定义书签。 第六章 结论与展望 . 42 6.1 论文总结 . 42 6.2 缺点不足 . 42 6.3 研究展望 . 43 参考文献 . 44 致 谢 . 45 Contents Chapter 1 Preface. 1 1.1 Research Background . 1 1.2 Research Subject . 2 1.3 Expecting Goals
12、. 2 1.4 Paper Organization . 3 Chapter 2 Models and the Main Technical Presentations . 5 2.1 RBAC Model . 5 2.1.1 Discretionary Access Control. 6 2.1.2 Mandatory Access Control. 6 2.1.3 Ro1e-Based Access Control. 7 2.2 SSH Framework . 8 2.1.1 Spring . 8 2.1.2 Struts . 10 2.1.3 Hibernate . 12 2.3 Coo
13、kie Technology . 13 2.4 JavaScipt . 13 Chapter 3 System Design. 15 3.1 Requirement Analysis . 15 3.2 Running Environment: . 16 3.3 Basic process: . 17 3.3.1 Identification Process . 17 3.3.2 Authorization Process . 18 3.4 System Structure . 19 3.5 Interface Design. 20 3.5.1 User Interface . 20 3.5.2
14、 External Interface . 21 3.5.3 Internal Interface . 21 3.6 Error Handling . 24 3.7 Use Case Design. 24 Chapter 4 Detail Design and Implmentation. 27 4.1 Component Graph . 27 4.2 Deployment Graph. 27 4.3 Class Graph . 28 4.4 Access Control Process . 30 4.4.1 User Operation Authority Verification . 30
15、 4.4.2 SSO Admin Authority Management Process . 31 4.4.3 Application Admin Authority Management Process . 32 4.6 Database Design . 32 Chapter 5 Testing and Analysis . 36 5.1 Software Testing Introduction . 36 5.2 Testing Cases. 36 5.2.1 User Operation Authority Verification . 36 5.2.2 SSO Admin Auth
16、ority Testing . 36 5.2.3 Application Admin Authority Testing . 38 5.3 Running Results 错误 !未定义书签。 Chapter 6 Conclusion and Prospect . 42 6.1 Conclusions . 42 6.2 Drawbacks . 42 6.3 Research Prospect . 43 References . 44 Acknowledgements. 45 单点登录系统下用户权限控制的设计与实现 第 1 页 第一章 绪论 1.1 研究背景及意义 单点登录 (Single Si
17、gn On),简称 SSO,是目前比较流行的企业业务整合的解决方案之一,是指在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统 1。 随着 计算机技术 和 互联网 技术的迅猛发展,人民的生活生产方式发生了深刻的变化,互联网开始渗透到人们生活的各个角落,电子商务开始普及,电子政务得到广泛应用, ERP,企业应用集成也不断发展 , 各种千奇百怪的网络应用不断出现, 现在的世界已经 成为网络的世界 。 各种网络应用不断普及,每个人在 Internet 中都有各种 各样的账户,用户每天都需要登录到许多不同的系统,如邮件系统, OA 办公自动化系统,客户关系管理系统,各种应用服务器等。
18、每个系统都要求用户遵循一定的安全策略,比如要求输入用户名和密码 等。每个系统都有各自的认证和权限管理策略,用户要访问系统的话就要登录到特定的系统中,进行身份验证后才可以访问该系统信息。由于 没有统一的认证 框架 ,一方面这样就导致用户需要记住多套用户名和密码,重复验证用户身份,另一方面 对 管理员 来说,他们不得不维护不同应用系统的用户信息和用户的权限信息,而且也会造成 服务器的巨大开销。用户所使用的应用系统 越多,登录时出错的可能性就会越大,受到非法截获和 破坏 的可能性也会大大增加,系统的安全性就会降低。 因此,在市场上提出了这样的需求:网络用户可以基于最初访问网络时的一次身份验证,对所有
19、被授权的网络资源进行无缝的访问 ,实现“一点登陆,多点漫游” 3, 单点登录的优点是可以提高用户的工作效率:用户不需要每次访问一个网络资源就进行一次认证, 降低网络操作的费用, 并且 提高网络的安全性 。 单点登录是单个网站向网站群发展的一个现实需求 ,它正处于不断发展的进程中 4。 本文 将结合电子商务系统中的 单点登录的 具体 需求, 提出一个统一 的授权平台,该平台主要正对 Web 应用系统领域提出一种统一的授权解决方案,使得单点登录系统下用户权限控制的设计与实现 第 2 页 相关的 Web 应用系统可以共享用户信息 5。本文将 设计并实现 用户权限集中式管理的 功能,并且实现两个测试系
20、统进行设计。 通过该课题的设计和实现,可以使我们了解通过令牌机制实现单点登录的基本原理 以及各种权限管理方法 ,对单点登录系统开发有一个较深的理解。 1.2 研究内容 各种不同的应用系统通过单点登录系统实现一次登录,各处漫游的功能,并且通过集中 式 的用户权限管理,结合访问控制机制,对所有单点登录中的多个互相信任的应用系统进行统一的用户权限控制。 本文中所设计和实现的单点登录系统中采用了基于角色的访问控制方法的思想,引入了用户,角色,权限的概念,通过用户权限的统一有效的管理,保证各个应用系统下的数据和资源的安全,防止非法用户的恶意破坏和用户误操作,从而提高各个系统的稳定性 6。具体来说就是可以
21、要提供一个通用的,完善的,安全的,易于管理,具有良好的可移植性以及扩展性的一个集中的用户管理权限管理模块,各个应用系统 的管理员 可以通过这个模块 来管理本系统的用户,角色权限,定制自己的用户权限控制策略等,单点登录系统的管理员还可以对要进行统一登录的系统进行管理 。 1.3 预期目标 课题总体目标是 在 单点登录系统 下设计并实现统一的用户权限管理模块,使之可以将不同应用系统的用户管理统一起来,减少管理员的工作量,并且 可以把它运用在实际的 系统 平台上。 统一权限管理主要包括角色管理,用户角色指派,角色权限指派,以及权限管理及授权管理客户端 7.根据具体的需求我们 需要实现的功能主要有如下
22、几点: 一、 应用系统管理 : 单点登录整合了不同的应用系统的 身份验证 是 权限控制的基础。在用户身份通过认证后就可以获得系统颁发的令牌,凭借此令牌,用户能够访问受保护的应用系统。 该功能只能提供给单点登录系统的管理员 用户使用。 单点登录系统下用户权限控制的设计与实现 第 3 页 二、 用户管理 :建立用户身份与现有资源对应的访问权限控制机制,在用户通过身份验证登陆系统后, SSO 要根要自动赋予用户相应的权限,用户可以访问到在他权限访问内的各种应用系统资源,对不在其权限内的资源将不会访问到。该功能可以提供给单点用户系统的管理员使用,也可以提供给各个应用系统使用,但必须要保证各个应用系统的
23、管理员只能对本系统的用户进行管理。 三 、 角色 管理:可以为不同的应用系统创建不同的角色,并且对角色赋予合理的权限使之能够访问到他应该访问到的资源,并且对没有访问权限的资源进行访问控制。 该功能可以提 供给单点用户系统的管理员使用,也可以提供给各个应用系统使用,但必须要保证各个应用系统的管理员只能对本系统的角色进行管理。 四 、 权限管理:可以为不同的应用系统创建不同的 权限 , 对应用系统权限进行增删改查操作。 该功能可以提供给单点用户系统的管理员使用,也可以提供给各个应用系统 的管理员 使用,但必须要保证各个应用系统的管理员只能对本系统的 权限 进行管理。 五 、 具有现实意义, 设计出
24、来的 模块 能够应用在实践中,体现其实际价值和意义。 1.4 论文的组织结构 论文共分为六章,其主要内容和章节安排如下: 第一章 为绪论,主要分析了课题的研 究背景与意义 , 讨论本论文需要研究的内容和达到的目标。 第 二 部分主要是 介绍实现单点登录系统所 要用的的技术 ,分别介绍了在项目中使用 基于角色的权限控制模型( RBAC),开源 的 Struts+Sping+Hibernate 开发框架,介绍了使界面层,逻辑层和控制层解耦的 MVC 模型,使用到的 Cookies技术 , JavaScript 技术 。 第 三 部分主要是概要设计,主要简述了系统的的 总体需求和 总体设计, 给出了系统用例图和基本的流程 。 第 四 部分是详细设计 与 实现部分,主要是陈述系统是如何实现单点登录 系统中用户管理功能 。 给出了系统 的数据库设计,接口设计 。
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。