基于Kisso的单点登录系统设计与实现毕业论文
2020-04-12 16:52:53
摘 要
在如今这个信息技术高度发达的社会,我们接触到的应用系统也越来越多,并且同一家企业旗下也会存在很多不同的系统。一般情况下,每一个不同的应用程序系统都会配备各自的身份验证系统用于用户的身份验证,因此当用户访问不同的系统时,就需要在每个系统进行一次身份验证。这意味着用户需要记住不同的用户帐号和身份验证信息系统,这不仅降低了用户体验,同时也增加了系统管理维护的难度,增加了系统的成本。而单点登录技术的出现,在很大程度上解决了这个问题,单点登录系统使用一个统一的身份验证机制,能够使用户只进行一次身份认证便可以访问多个具有访问权限的应用系统。
本文通过研究统一身份认证和单点登录等关键技术,并在此基础上详细论述和分析了单点登录的原理。在比较几个流行的单点登录模型的特点后,本文最终决定使用Kisso插件来实现单点登录系统,该系统具有以下功能:用户只需在统一身份验证的入口验证身份,就可以无缝地访问他们任何应用程序系统。每个不同的应用系统都存储着用户的用户名和密码。当用户完成统一身份验证后,向应用程序系统发出访问请求时,应用程序系统可以自动获得用户的身份信息,判断访问权限。使用拦截器的自动填充及时实现系统接收到身份信息后用户的自动登录功能,实现单点登录。并且针对不同的需求,在用户未进行登录时,一些系统将会被重定向到登录界面进行身份验证,而一些系统会根据显示未登录情况下的页面,在用户进行身份验证后开放登录情况下的功能。
关键词:单点登录,统一身份认证,Kisso
Abstract
In this highly developed society, we have more and more application systems, and there are many different systems in the same enterprise. In general, each of the different application systems will be equipped with their own authentication systems for user authentication, so when users access different systems, it is necessary to authenticate each system at a time. This means that users need to remember different user accounts and authentication information systems, which not only reduces the user experience, but also increases the difficulty of system management and maintenance, and increases the cost of the system. The emergence of single sign on technology has solved this problem to a great extent. The single sign on system uses a unified authentication mechanism. It can access a number of application systems with access rights by only one identity authentication.
This paper studies the key technologies of uniform identity authentication and single sign on, and on this basis, discusses and analyzes the principle of single sign on in detail. After comparing the characteristics of several popular single sign on models, this paper finally decides to use the Kisso plug-in to implement the single sign on system. The system has the following functions: the user only needs to verify identity at the entrance of unified authentication, and can access any of their application sequence systems seamlessly. Each different application system stores the username and password of the user. When the user completes the unified authentication and sends an access request to the application system, the application system can automatically obtain the user's identity information and judge the access rights. The automatic filling of the interceptor is used to realize the automatic login function of the user after receiving the identity information and realize the single sign on. And for different requirements, some systems will be redirected to the login interface to authenticate when the user does not log in, and some systems will be able to open the login situation after the user is authenticated, according to the pages displayed in the unregistered condition.
Keywords:Single Sign On,Unified Identity Authentication,Kisso
目录
第1章 绪论 1
1.1. 目的及意义 1
1.2. 国内外研究现状 1
1.3. 本文组织结构 3
1.4. 本章小结 4
第2章 单点登录原理分析 5
2.1. 单点登录原理 5
2.2. 单点登录优点 7
2.3. SAML规范 8
2.4. 身份认证策略 10
2.5. 本章小结 11
第3章 系统设计 12
3.1. 系统总体结构 12
3.2. 系统模块划分 13
3.2.1. 身份认证服务中心 13
3.2.2. 用户信息数据库 13
3.2.3. 应用系统拦截器 13
3.2.4. ajax交互接口 14
3.2.5. 用户客户端 14
3.3. 系统运行机制 14
3.4. 系统实现 15
3.4.1. 需求分析 15
3.4.2. 相关技术 16
3.4.2.3. Ajax 17
3.4.3. 模块划分 19
3.5. 本章小结 25
第4章 系统实例测试 26
4.1. 环境部署 26
4.2. 系统实例 26
4.3. 本章小结 30
第5章 总结与展望 32
5.1. 本文总结 32
5.2. 展望未来 32
致谢 33
参考文献 34
绪论
目的及意义
随着信息化的深入,越来越多的应用系统出现在我们的日常生活中,用户在日常操作中需要登录各种不同的应用系统,输入账号密码进行身份认证和授权。如果为了保障安全性每个系统使用不同的用户名和密码,用户所需要记忆的用户名和密码对就太多了,对用户来说这就太麻烦了而且很容易遗失。在大多数情况下,用户为了减少记忆量,会在很多系统使用同一套账号密码,或者简化密码的复杂度,有些则会列出一个账号密码列表用于记录自己的登录信息,而这写操作实际上都会加大身份信息的安全隐患。同时过多的账号密码对管理系统来说也是一个巨大的负担,系统在维护这些身份信息时需要更大的开销,同时系统在升级时也会存在很多问题。
对于大型企业,内部存在很多不同时期构建的业务支持系统,这些支持系统很多时候都不在同一个平台运行,有些可能是由不同的厂商按照不同的标准或使用不同的技术进行开发的。随着企业的发展,这样的应用系统会逐渐增多,为了减低管理的消耗,企业会倾向于采取最大限度得重用已存在的系统,而不是耗费大量人力财力重新开发一套全新的系统。在系统集成的过程中就会发现一个问题,每个单独的系统时,都可能存在一套自己的安全体系和身份验证系统,如果不做修改,那么在实际使用中是很不方便的:用户每次进入一个子系统前都需要进行一次身份验证,可想而知这将会有多麻烦。随着麻烦,系统的管理难度不然上升,安全性也随之下降。
在这种情况下,如果我们拥有一套系统可以实现统一身份验证,用户只需要进行一次身份验证之后就可以自由访问各种不同的应用系统,那么之前的问题是不是可以实现很大程度上的解决呢?答案是肯定的,单点登录技术就是针对这种市场需求提出的一个概念,通过统一身份验证技术,满足用户在进行一次身份验证后,就能对所有具有访问权限的资源进行无缝访问的需求[1]。统一身份认证技术与单点登录技术的结合,实现了用户身份信息的统一管理,不仅可以提高用户的使用体验感,同时也减轻了系统管理员对系统进行维护和升级的难度[2]。同时对用户身份信息的安全性也进行了加强,采用统一用户信息管理和应用系统用户信息管理共存的方式能够让用户信息以分布式存储,规避了用户信息存储过于集中而带来的安全隐患,同时在用户信息进行集合过程避免了对数据进行大规模的迁移,也无需对已有系统做出大规模的改动。
国内外研究现状
目前单点登录技术还不完善,仍处于发展阶段,虽然已经有很多解决方案,但是都互有优劣。不过比较成熟的几个方案我们可以发现大致思路都是一致的,实现单点登录机制大致可以划分为Cookie机制和Session机制。
Cookie是为了补充HTTP无状态特性进而满足用户在某些方面的需求而提出的状态管理机制[3]。能够通过用户发起的请求,在服务器和客户端之间传递,从而实现对用户的状态信息的更新和保存,能够让服务端获取用户的状态信息响应相关的资源,同时也随时把服务器端用户的状态传达给客户端,保持用户状态的一致性。通常cookie是与网站域名保持的关联,而不是与域名下的页面绑定。所以同一个域名下的多个网页可以共享同一个cookie,这样用户状态的存储更加方便。
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: