文档库 最新最全的文档下载
当前位置:文档库 › 基于LDAP的单点登录方案的设计与实现

基于LDAP的单点登录方案的设计与实现

基于LDAP的单点登录方案的设计与实现
基于LDAP的单点登录方案的设计与实现

基于LDAP的单点登录方案的设计与实现

1项目背景

随着信息技术和网络技术的广泛普及,政府、公司、学校等公共系统的内部出现了各种各样的应用管理系统。这些管理系统中最重要的一类就是基于B/S结构的Web应用系统,如电子邮件服务等。这些应用一般通过浏览器访问Web服务器,服务器以页面表单的方式要求用户输入登录参数,用户输入并提交后,由Web服务器的脚本程序进行身份验证。

近年来,Web应用的使用进入成熟阶段,提供的信息和服务也越来越多。成功地管理和保护Web应用的信息和资源已经成为一个越来越复杂的挑战。身份认证管理是保护Web信息和资源的核心部分。一般的身份认证方法是在每个应用系统中保存各自的用户信息并建立独立的身份验证模块,使用独立的认证机制在各自的身份认证模块中认证。这种传统的身份认证方法将用户的“网络身份”分割成许多独立的碎片,这些碎片构成了繁多的一对一的客户服务关系,导致了更多的安全风险。同时如果用户要频繁访问不同系统,每进入一个系统就要登录一次,这无疑会耗费大量的时间,并且用户需要记忆大量的账号信息。

因此,基于安全和效率的考虑,信息系统急需有一个统一的、具有较高安全控制的身份验证和授权系统,以保证数据安全和用户操作方便。在本文中,我设计并实现了一个基于LDAP的单点登录系统,它能够很好地解决用户身份验证和授权的问题。

2单点登录系统介绍

单点登录系统(Single Sign-On,SSO),是指当用户访问多个需要认证的系统应用时,只需要初始进行一次登录和身份认证,就可以访问具有权限的任何系统,而不需要再次登录,后续系统会自动获取用户信息,从而识别出用户的身份。这样,无论用户要访问多少个不同系统间的关联应用,他只需要进行一次登录,而不需要用户重复输入认证信息。单点登录技术可以简化用户访问多种系统应用,避免用户由于需要记忆众多账号信息而出现的遗忘,而且可以减少口令等重要信息在网络传播时被截获的危险。

本系统中采用LDAP目录来保存用户信息。LDAP(LightweightDirectoryAccessProtocol)即为轻量级目录访问协议,它基于X.500标准,但是简单了很多,而且可以根据需要定制。LDAP目录中可以存储各种类型的数据,包括电子邮件地址、邮件路由信息、联系人列表等。通过把LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至是主要的数据源都可以放在任何地方。LDAP协议是跨平台和标准的协议,因此应用程序就不用为LDAP目录放在什么样的服务器上操心了。

3传统的用户登录模式

传统的认证机制是基于用户名和密码的,每一个系统都建立有自己的用户信息数据库,用以验证用户的身份。用户要访问不同的系统就需要在各个系统中建立相应的帐号。

当其要访问一个系统中的资源时,用户首先要登录进入该系统,如果他同时要访问处于多个系统中的资源,用户就不得不按照各个系统的要求分别登录进入相应的系统。

近年来,为了实现企业的信息化、电子商务和其他需求,出现了越来越多的网络应用系统,在这种传统的用户登录模式下,这些企业的网络用户和系统管理员不得不面对这些现实:

(1)用户需要使用其中的任何一个应用的时候都需要做一次身份认证;

(2)系统管理员需要对每一个系统设置一种单独的安全策略,而且需要为每个系统中的用户单独授权以保证他们不能访问没有被授权访问的网络资源。

传统的用户登录过程的概念结构如图3.1所示:

图3.1传统的用户登录过程

图2.2说明了传统的用户登录模式的登录过程的原理:网络用户登录不同的应用系统时,需要输入相应的用户信息,不同的应用系统用不同的认证策略对用户进行认证。

4单点登录模式

单点登录,就是用户只需要在网络中主动地进行一次身份认证,然后就可以访问其被授权使用的所有处在网络上的资源而不需要再参与其它应用的身份认证过程。这些服务资源可能处在不同的计算机环境中,用户以后的身份认证是系统自动完成的。

首先,单点登录系统是采用了结合用户电子身份标识的新的身份认证机制,这种新的身份认证机制可大大提高系统的安全性。

其次,单点登录系统把原来分散的用户管理,集中起来了。各个系统之间依靠相互授权的方式来进行用户身份的自动认证。用户的账号信息通过统一的电子认证进行管理管理的,管理员只需要修改统一的用户认证信息就可以关联各个系统中的用户。由此可见单点登录系统的优点有:

(1)提高用户的工作效率和带来良好的用户体验。用户不再需要每访问一个应用资源就进行一次身份认证过程,从而使用户有更多的时间从事有益的工作,同时也可以把用户从繁杂的帐户信息记忆中解脱出来。

(2)更好的网络安全性。系统中使用的身份认证机制提供了加密等多种方法,可以防止大部分的网络攻击。同时由于新的身份认证机制使用户的账号信息记忆量减少,使系统由于用户机密信息的泄露而导致安全事故出现的机会大大减少。

单点登录过程的概念结构如图2.3所示。

图2.3单点登录过程

图2.3说明了单点登录系统模式下用户登录过程的原理:网络用户访问不同的应用系统时,只需在统一认证入口(即单点登录中的单点)登录,取得身份认证系统的身份标识,从而达到了单点登录,多点应用的目的。

目前SSO的模型主要有三种:基于经纪人(Broker)的SSO方案;基于代理(Agent)的SSO 方案;基于网关(Gateway)的SSO方案。

(1)基于经纪人的单点登录方案(Broker-BasedSSO)

在Broker-BasedSSO方案中,有一个完成集中认证、用户账号管理的服务器和一个公共、统一的用户数据库。Broker为用户提供一个能够被用户进一步访问请求的电子身份凭证。Broker-basedSSO方案的主要优点是有一个中央用户数据库,易于对用户数据进行管理。主要缺点是需要修改原有应用。

(2)基于代理的单点登录方案(Agent-BasedSSO)

在Agent-BasedSSO方案中,有一个代理程序,自动为不同的应用程序认证用户。代理程序可以用不同的方式实现。若Agent部署在客户端,它能装载获得用户名口令列表,自动替用户完成登录过程,减轻客户端程序的认证负担。Agent部署在服务器端,它就是服务器的认证系统和客户端认证方法之间的“翻译”。当软件供应商提供了大量的与原有应用程序通信的Agent时,Agent-BasedSSO方案可使应用迁移变得十分容易。

(3)基于网关的单点登录方案(Gateway-BasedSSO)

在基于Gateway-BasedSSO方案中,用户对受限网络服务的访问都必须通过网关。网关可以是防火墙,或者是专门用于通信加密的服务器。所有需要保护的网络服务器都放在被网关隔离的受信网段里。客户通过网关认证后获得访问服务的授权。如果在网关后的服务能够通过IP地址进行识别,就可以在网关上建立一个基于IP的规则表。将规则表与网关上的用户数据库相结合,网关就可以被用于单点登录。由于网关可以监视并改变传给应用服务的数据流,所以它能够改变认证信息以适应适当的访问控制,而不用修改应用服务器。网关作为一个分离的部件,安装和设置方便;但是如果存在多个安全网关,那么用户数据库并不能自动地被同步。Gateway-BasedSSO方案不适用于用户端使用代理的情况。

本文设计并实现的基于LDAP目录服务的校园身份管理系统,采用的是较为简单的

Broker-BasedSSO方案。

5LDAP目录访问协议

5.1目录访问协议

5.1.1目录服务概述

目录是一种专门被优化用于执行读、浏览、搜索等操作的数据库,可以包含网络以及在网络上运行的应用程序所需的信息。它倾向于包含具有描述性的、基于属性的信息,并且支持高度复杂的过滤搜索功能。目录通常不支持复杂的关系操作和事务机制,而关系型数据库管理系统则常用于处理复杂的更新操作。目录被优化成以对大量的查找和搜索操作做出快速响应,并且目录可以复制信息以增加可用性和可靠性,这样也减少了响应时间。

目录服务提供对目录信息访问。有多种不同的方式实现目录服务,不同的方式允许目录存储不同种类的信息,对目录信息的引用、查询、更新也有不同的要求。其中全局目录通常是分布式的,目录信息存储在网络上的多台主机上,多台主机联合提供目录服务。

5.1.2 X.500目录访问协议

X.500协议系列是世界通用的分布式目录服务标准,由ITU-T与ISO/IEC于1988年合作制定,并成为ISO标准9454。X.500在一个层次式命名空间中组织目录对象,并支持大量的信息存储。X.500定义了强大的搜索功能,使存取目录信息变得更加容易。

X.500具有可伸缩性,可以借助于附加的模块实现与其它目录的互操作性。X.500定义了综合目录服务,包括信息模型、名字空间、功能模型、访问控制、目录复制以及目录协议。

X.500标准是建立在ISO协议基础上的一个应用协议。它以目录树的形式存放和管理信息,每棵目录树对应一个单位或组织,由一个目录系统代理DSA(DirectorySystemAgent)管理。各个独立的DSA之间通过目录系统协议DSP(DirectorySystemProtocol)相互传递信息,形成分布式系统和区域自治,实现信息的共享。用户通过目录用户代理DUA(Directory User Agent)通过DAP(Directory Access Protocol)访问DSA,查询和维护信息。

由于X.500是一个分布式目录服务,因此具有巨大的潜在命名空间、本地数据的本地管理能力、高级的搜索功能、一直并且可以局部扩展的命名空间、提供简单认证和强认证安全性、访问控制列表和复制支持。但是,X.500虽然是一个完整的目录服务协议,但在实际应用的过程中,却也存在着不少障碍,主要表现在:

(1)严格遵照ISO七层协议模型,对相关层协议环境要求过多;

(2)主要是在UNIX上运行,很多小系统上无法使用。因而随着TCP/IP协议的普及,这一系列协议越来越不适应实际的需要了。

5.1.3 LDAP目录访问协议

LDAP(LightweightDirectoryAccessProtocol)即为轻量级目录访问协议,它基于X.500标准,但是简单了很多,而且可以根据需要定制。与X.500不同,LDAP支持TCP/IP,这对访问Internet是必须的。LDAP的核心规范在RFC中都有定义。在企业范围内实现LDAP,可以让运行在几乎所有计算机平台上的所有应用程序从LDAP目录中获取信息。

LDAP目录中可以存储各种类型的数据,包括电子邮件地址、邮件路由信息、联系人列表等。通过把LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至是主要的数据源都可以放在任何地方。

LDAP协议是跨平台和标准的协议,因此应用程序就不用为LDAP目录放在什么样的服务

器上操心了。实际上,LDAP得到了业界的广泛认可,就是因为它是Internet的标准。生产商都很愿意在产品中加入对LDAP的支持,因为他们根本不用考虑另一端(客户端或服务端)是怎么样的。LDAP服务器可以是任何一个开发源代码或商用的LDAP目录服务器(或者还可能是具有LDAP界面的关系型数据库),因为可以用同样的协议、客户端连接软件包和查询命令与LDAP服务器进行交互。

5.1.4 X.500和LDAP两种协议的比较

从目录服务技术的发展来看,LDAP标准实际上是在X.500标准基础上产生的一个简化版本,两者之间的关系与那种为解决同一个问题而出现的两个独立发展的技术有很大的不同之处。

(1)作为IETF(InternetEngineeringTaskForce)一个正式的标准,LDAP是X.500标准中的目录访问协议LDAP的一个子集,可用于建立X.500目录。因此这两个目录服务技术标准有着许多的共同之处,即在平台上,都实现了一个通用的平台结构,提供了一个操作系统和应用程序需要的信息服务类型,可以被许多平台和应用程序接收和实现;在信息模型上,都使用了条目、对象类、属性等概念和模式来描述信息;在命名空间方面,都使用了目录信息树结构和层次命名模型:在功能模型上,都使用了相似的操作命令来管理目录信息;在认证框架方面,都可以实现用户名称和密码,或者基于安全加密方式的认证机制;在灵活性上,它们的目录规模都可大可小,大到全球目录树,小到只有一台目录服务器;在分布性方面,目录信息都可以分布在多个目录服务器中,这些服务器可以由各组织管理,既保证了目录信息总体结构一致性,又满足了分级管理的需要。

(2)LDAP与X.500的DAP相同之处是LDAP也是被设计用来从分层目录中提取信息。但与之不同的是,为保持网络的带宽,LDAP对来自X.500目录询问的应答次数加以限制。最初LDAP只是一种访问X.500目录的简单方法,是X.500的功能子集,但随着它的成熟和独立发展,已经增加了许多在X.500中没有的新特性。现在的LDAP既可以为X.500目录服务提供一个轻型前端,也可以实现一个独立的目录服务。

(3)LDAP的独特之处

在LDAP中AP(AccessProtocol)既是一个X.500的访问协议,又是一个灵活的,可以独立实现的目录系统。

在LDAP中,DAP基于Internet协议,X.500基于OSI(开放式系统互联)协议:建立在应用层上的X.500目录访问协议DAP,需要在OSI会话层和表示层上进行许多的建立连接和包处理的任务,需要特殊的网络软件实现对网络的访问;LDAP则直接运行在更简单和更通用的TCP/IP或其它可靠的传输协议层上,避免了在OSI会话和表示层的开销,使连接的建立和包的处理更简单、更快,对于互联网和企业网应用更理想。

LDAP协议更为简单:LDAP继承了X.500最好的特性,同时去掉了它的复杂性,LDAP通过使用查找操作实现列表操作和读操作;另一方面省去了X.500中深奥的和很少使用的服务控制和安全特性,只保留了常用的特性,简化了LDAP的实现。

LDAP通过引用机制实现分布式访问:X.500中DSA通过服务器之间的链操作实现分布式访问,这样就使查询的压力集中在了服务器端;而LDAP通过客户端API实现分布式操作,平衡了负载。

LDAP具有低费用、易配置和易管理的特点:经过性能测试,LDAP比X.500具有更少的响应时间;LDAP提供了满足应用程序对目录服务所需求的特性。

5.2 LDAP工作原理

LDAP是以服务器客户端方式工作的,目录服务将数据库软件的逻辑结构分为前端(客户

端)和后端(服务端和仓库)。

LDAP的逻辑结构如图3.1所示。

图3.1LDAP的逻辑结构

图3.1说明了LDAP的三层逻辑结构:客户端负责和用户进行交流,服务器端负责接受和解释客户的请求,仓库则是真正存储信息的地方。

客户端是直接面对一般开发者和用户的;服务端是用于接收和解释客户请求,然后以客户的身份完成请求,并将完成结果返回给用户;仓库则是真正存储信息的地方。在LDAP中,服务端和仓库之间的连接采用了ODBC机制,所以可以使用任何支持和具有ODBC驱动程序的数据库软件,简单的可以是Linux系统中自带的GDBM或Alpha中的NDBM等数据库管理系统;也可以选用在功能和性能上更优越的Oracle和Sybase等系统,这样,可以提高系统的可移植性。

现在己经有了许多基于LDAP协议开发出的资源管理系统和工具,如Openldap,NDS(NovellDirectoryService)和ADS(ActiveDirectoryService),OracleOID等。它们已经逐渐的被使用在了各个需要目录服务的领域,并且应用的趋势在增强。

5.3 LDAP模型

LDAP有四种模型:信息模型、命名模型、功能模型、安全模型,用以描述LDAP的工作机制,描述什么样的数据可以存于LDAP目录中,以及如何操作这些数据。

5.3.1信息模型

LDAP信息模型描述LDAP的信息表示方式,定义了能够在目录中存储的数据。它以模式(Schema)为基础,以条目(Entry)为核心。模式由若干条目组成,条目即为关于对象的属性信息集合。每个属性储存有属性值,说明对象的一个特征,每个属性有一个类型,不同的类型有不同的取值范围,每个类型可以对应一个值,也可以对应多个值。LDAP中的信息模型,类似于面向对象的概念,在LDAP中每个条目必须属于某个后多个对象类型(ObjectClass),每个ObjectClass由多个属性类型构成,每个属性类型有所对应的语法规则和匹配规则;对象类和属性类型的定义均可以使用继承的概念。每个条目创建时,必须定义所属的对象类,必须提供对象类中必选类型的属性值,在LDAP中把对这些对象类、属性类型、语法和匹配规则统称为Schema。

Schema元素分系统定义和用户定义两类。一般用户只能定义属性类型和对象类型。

(1)属性类型(AttributeTypes)

属性类型控制属性格式,包括属性的语法、匹配规则、是否可以多值、修改权限和用法等。属性类型可以直接由0或多个属性类型继承而来,形成属性类型的层次关系树。

(2)对象类(ObjectClass)

对象类是“共享某些特性的对象的识别家族”,即对象的模板。通过定义条目中所含的属性来定义目录中的条目类型。

5.3.2命名模型

LDAP中的命名模型,也即LDAP中的条目定位方式。在LDAP中每个条目均有自己的DN 和RDN。DN是该条目在整个树中的唯一名称标识,RDN是条目在父节点下的唯一名称标识。如同文件系统中,带路径的文件名就是DN,文件名就是RDN。

命名模型以倒树的形式排列,目录树命名模型如图3.2所示。

图3.3目录树命名模型

图 3.3说明了目录树命名模型的结构,该图表述了组织ou=Student,o=SSDUT,st=LiaoNing,c=China下的一个用户cn=guoshuyang。

可以看到,LDAP的模型与Unix系统中目录结构类似,其不同之处在于:

(1)在LDAP目录中,DN中各元素的排序是从叶到根;而在Unix文件系统中,文件绝对路径名中各元素的排序是从根到叶;

(2)在LDAP目录中,DN中各元素之间的分隔符是“,”;而在Unix文件系统中,文件绝对路径名中各元素之间的分隔符是“/”;

(3)在LDAP目录中,允许超越树形结构的别名项目(AliasEntry),它指向其它项目。

5.3.3功能模型

在LDAP中功能模型共有三类:

(1)询问(Interrogation)

LDAP在信息询问方面主要定义了查找(Search)和比较(Compare)两个操作。在查找操作中,根据选取标准在指定范围内选择项目,这个选取标准通常称作查找过滤器(Searchfilter),并且可以规定一组需要返回的属性。另外,还可以规定查找结果的大小和客户端等待结果的时间。比较操作主要是判断指定项目是否包含指定属性(包括类型和值)。

(2)更新(Update)

LDAP在信息更新方面定义了新增(Add),删除(Delete)、修改(Modify)和修改RDN(ModifyRDN)等四个操作。新增操作主要是在LDAP目录中插入一个新的项目;删除操作

统一认证与单点登录系统-产品需求规格说明书

统一认证与单点登录系统产品需求规格说明书 北京邮电大学

版本历史

目录 0文档介绍 (5) 0.1 文档目的 (5) 0.2 文档范围 (5) 0.3 读者对象 (5) 0.4 参考文档 (5) 0.5 术语与缩写解释 (5) 1产品介绍 (7) 2产品面向的用户群体 (7) 3产品应当遵循的标准或规范 (7) 4产品范围 (7) 5产品中的角色 (7) 6产品的功能性需求 (8) 6.0 功能性需求分类 (8) 6.0.1产品形态 (8) 6.1 外部系统管理 (9) 6.1.1外部系统注册 (9) 6.1.2外部系统集成配置 (11) 6.2 用户管理 (11) 6.2.1用户管理控制台 (11) 6.2.2用户自助服务 (13) 6.2.3统一用户管理 (13) 6.3 组织结构管理 (14) 6.4 权限管理 (15) 6.4.1统一角色管理 (18) 6.5 单点登录 (18) 6.5.1基于Httpheader单点登录 (19) 6.5.2基于表单代填的方式单点登录 (20) 6.5.3基于CAS单点登录 (20) 6.5.4总结 (23) 7产品的非功能性需求 (24) 7.1.1性能需求 (24) 7.1.2接口需求 (24) 8附录B:需求确认 (25)

0文档介绍 0.1文档目的 此文档用于描述统一认证与单点登录系统的产品需求,用于指导设计与开发人员进行系统设计与实现。 0.2文档范围 本文档将对系统的所有功能性需求进行消息的描述,同时约定非功能性以及如何与第三方系统进行交互。 0.3读者对象 本文档主要面向一下读者: 1.系统设计人员 2.系统开发与测试人员 3.系统监管人员 4.产品甲方管理人员 0.4参考文档 《凯文斯信息技术有限公司单点登录及统一用户技术方案V1.0》 0.5术语与缩写解释

一个Web应用单点登录系统的设计和实现

第20卷哈尔滨师范大学自然科学学报 Vol.20,No.12004 第1期 NATURAL SCIENCES JOURNAL OF HARBIN NORMAL UNIVERSITY 一个Web 应用单点登录系统的设计和实现 陈重威 (上海市静安区业余大学) 摘要 作者在分析借鉴三种Web 单点登录产品和技术的基础上,设计并实现了一个Web 单点登录系统,该系统适用于企业内部Intranet 应用环境,可以跨多个In ternet 域,可以支持常见的几种操作系统和Web 应用服务器.本文介绍了此系统的设计思路和关键技术,并给出了部分关键代码. 关键词:Web;HTTP;单点登录;身份验证 收稿日期:2003-12-28 陈重威,(1948-),男,上海静安区业余大学计算机系副教授,主要研究方向:计算机网络、数据库 0 引言 经过多年的建设,我国企业中建立起来了一些基于Web 的应用系统,这些系统运行在多种操作系统和应用服务器上面,由不同的技术人员在不同的时期采用不同的技术建立,采用多种相互独立的用户管理、身份验证系统.在当前企业有限的经费预算条件下,如何使用户可以只登录企业信息系统一次就可以访问到企业中多种Web 应用一直是一种挑战.本文在分析三种具有代表性的Web 应用单点登录系统的基础上,针对中小型企业对Web 应用单点登录的要求、其Intranet 环境的特点,给出一个适应于中小型企业Intranet 内常见Web 应用的单点登录系统的设计框架及基于J2EE 的系统实现要点. 1 用户要求和现有产品 1 1 用户环境和要求 企业中基于Web 的应用系统种类繁多,有基于微软Internet Information Server 的运行在Windows 平台上的信息系统,有基于J2EE 应用服务器平台 的业务系统,有基于Lotus Domino 的办公自动化 系统,也有SAP 、ORAC LE 那样的ERP 系统或者财 务系统,这些系统各有各的用户数据库(关系型数据库、Domino 文档数据库、LDAP 服务器等).企业员工在不同应用系统中有不同的帐户!!!用户名和口令,他们需要牢记这些帐户.企业员工特别希望只登录一次就可以透明地访问其他各种应用系统,不再需要在各种应用系统的登录页面中多次输入不同的用户名和口令. 从用户的角度看,Web 应用单点登录系统的使用方法如下: 1 用户访问Web 单点登录系统,服务器返回登录页面,提示用户输入用户名和口令等认证信息; 2 用户登录系统,登录系统返回一个该用户有权访问的应用的列表; 3 自此以后,用户访问其他应用的时候,在用户看来,他不必进行身份验证就可以访问其他Web 应用了; 4 当用户退出一个应用系统,而没有退出?单点登录系统#,他仍然可以访问其他没有退出登录的应用系统.

CAS_SSO单点登录实例详细步骤

CAS SSO单点登录实例详细步骤 原创作者:孙俊财

第一步 1、用keytool生成证书: 命令: keytool -genkey -alias sjc -keyalg RSA -keysto re c:/store/mykey 说明: 这里-alias sjc 是表示生成的这个证书的别名叫sjc,-keyalg RSA 指的是采用的RSA算法,-keystore c:/store/mykey是指生成的证书存储的位置。回车后会提示你输入keystore password,这可以自己定(这里输入sunjuncai,下面配tomcat时要用的),然后是一些个人信息及组织信息,可以轻松搞定。 注意:密码输入后,会让你输入其他信息,记得这里第一个姓名必须是服务器的域名这里我输入的是完整计算机名称:gaofeng.nmc.hamcc 这里要注意如果不这样写就会报如下异常: java.io.IOException: HTTPS hostname wrong: should be 实战: C:\Documents and Settings\wangyoushi8>keytool -genkey -alias sjc -keyalg RSA -keystore c:/store/mykey 输入keystore密码:sunjuncai

您的名字与姓氏是什么? [Unknown]:gaofeng.nmc.hamcc 您的组织单位名称是什么? [Unknown]:上海神洲数港 您的组织名称是什么? [Unknown]:网络优化 您所在的城市或区域名称是什么? [Unknown]:郑州 您所在的州或省份名称是什么? [Unknown]:河南 该单位的两字母国家代码是什么 [Unknown]:ZH CN= gaofeng.nmc.hamcc, OU=上海神洲数港, O=网络优化, L=郑州, ST=河南, C=ZH 正确吗? [否]:y 输入的主密码 (如果和keystore 密码相同,按回车): 2、创建证书后,就导出证书: 命令: keytool -export -file c:/store/server.crt -alias sjc -keystore c:/store/mykey 说明: 从c:/store/mykey里取出证书入到c:/store/下,如果没有指定,就是存放在目录下C:\Documents and Settings\用户目录名\ 实战: C:\Documents and Settings\wangyoushi8>keytool -export -file c:/store/server.crt -alias sjc -keystore C:/store/mykey 输入keystore密码:sunjuncai 保存在文件中的认证 3、为客户端的JVM导入密钥: 命令: keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store/server.crt -alias sjc 说明: 注意:输入密码时密码为"changeit",这是默认密码. 特别说明:这个D:/jdk1.5.0_12/jre/lib/security/cacerts是指JDK的JRE路径下的lib目录. 至此,第一步完成。 实战: C:\Documents and Settings\wangyoushi8> keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store/server.crt -alias sjc 输入keystore密码:changeit

简单的单点登录实现过程及效果展示

一、实现过程 从用到的jar包文件夹的cas-server-3.3.1modules中找出cas.war放到tomcat/webapps下面(cas-server-webapp-3.3.1.war重命名即可)。 现在cas默认的server端已经有了,下面自己写2个客户端测试一下 MyEclipse里面新建web project:sso 新建类HelloWorldExample package servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Enumeration; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public final class HelloWorldExample extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException { response.setContentType("text/html");

PrintWriter writer = response.getWriter(); writer.println(""); writer.println(""); writer.println("Sample Application Servlet Page"); writer.println(""); writer.println(""); writer.println("

"); writer.println(""); writer.println(""); writer.println(""); writer.println(""); writer.println("
"); writer.println(""); writer.println(""); writer.println("

Sample Application Servlet

"); writer.println("This is the output of a servlet that is part of"); writer.println("the Hello, World application."); writer.println("
");

单点登录系统(SSO)详细设计说明书

单点登录系统(SSO)详细设计说明书 1、引言 1.1编写目的 为了单点登录系统(SSO系统)的可行性,完整性,并能按照预期的设想实现该系统,特编写需求说明书。 同时,说明书也发挥与策划和设计人员更好地沟通的作用。 1.2背景 a.鉴于集团运营的多个独立网站(称为成员站点),每个网站都具有自己的身份验证机制,这样势必造成:生活中的一位用户,如果要以会员的身份访问网站,需要在每个网站上注册,并且通过身份验证后,才能以会员的身份访问网站;即使用户以同样的用户名与密码在每个网站上注册时,虽然可以在避免用户名与密码的忘记和混淆方面有一定的作用,但是用户在某一段时间访问多个成员站点或在成员站点间跳转时,还是需要用户登录后,才能以会员的身份访问网站。这样不仅给用户带来了不便,而且成员网站为登录付出了性能的代价; b.如果所有的成员网站,能够实现单点登录,不仅在用户体验方面有所提高,而且真正体现了集团多个网站的兄弟性。通过这种有机结合,能更好地体现公司大平台,大渠道的理念。同时,这样做也利于成员网站的相互促进与相互宣传。 正是出于上面的两点,单点登录系统的开发是必须的,是迫在眉睫的。1.3定义 单点登录系统提供所有成员网站的“单一登录”入口。本系统的实质是含有身份验证状态的变量, 在各个成员网站间共用。单点登录系统,包括认证服务器(称Passport服务器),成员网站服务器。 会员:用户通过Passport服务器注册成功后,就具有了会员身份。 单一登录:会员第一次访问某个成员网站时,需要提供用户名与密码,一旦通过Passport服务器的身份验证, 该会员在一定的时间内,访问任何成员网站都不需要再次登录。 Cookie验证票:含有身份验证状态的变量。由Passport服务器生成,票含有用户名,签发日期时间, 过期日期时间和用户其它数据。

统一认证系统_设计方案

基础支撑平台

第一章统一身份认证平台 一、概述 建设方案单点登录系统采用基于Liberty规范的单点登录ID-SSO系统平台实现,为数字化校园平台用户提供安全的一站式登录认证服务。为平台用户以下主要功能: 为平台用户提供“一点认证,全网通行”和“一点退出,整体退出”的安全一站式登录方便快捷的服务,同时不影响平台用户正常业务系统使用。用户一次性身份认证之后,就可以享受所有授权范围内的服务,包括无缝的身份联盟、自动跨域、跨系统访问、整体退出等。 提供多种以及多级别的认证方式,包括支持用户名/密码认证、数字证书认证、动态口令认证等等,并且通过系统标准的可扩展认证接口(如支持JAAS),可以方便灵活地扩展以支持第三方认证,包括有登录界面的第三方认证,和无登录界面的第三方认证。 系统遵循自由联盟规范的Liberty Alliance Web-Based Authentication 标准和OASIS SAML规则,系统优点在于让高校不用淘汰现有的系统,无须进行用户信息数据大集中,便能够与其无缝集成,实现单点登录从而建立一个联盟化的网络,并且具有与未来的系统的高兼容性和互操作性,为信息化平台用户带来更加方便、稳定、安全与灵活的网络环境。 单点登录场景如下图所示:

一次登录认证、自由访问授权范围内的服务 单点登录的应用,减轻了用户记住各种账号和密码的负担。通过单点登录,用户可以跨域访问各种授权的资源,为用户提供更有效的、更友好的服务;一次性认证减少了用户认证信息网络传输的频率,降低了被盗的可能性,提高了系统的整体安全性。 同时,基于联盟化单点登录系统具有标准化、开放性、良好的扩展性等优点,部署方便快捷。 二、系统技术规范 单点登录平台是基于国际联盟Liberty规范(简称“LA”)的联盟化单点登录统一认证平台。 Liberty规范是国际170多家政府结构、IT公司、大学组成的国际联盟组织针对Web 单点登录的问题提供了一套公开的、统一的身份联盟框架,为客户释放了使用专用系统、不兼容而且不向后兼容的协议的包袱。通过使用统一而又公开的 Liberty 规范,客户不再需要为部署多种专用系统和支持多种协议的集成复杂度和高成本而伤脑筋。 Liberty规范的联盟化单点登录SSO(Single Sign On)系统有以下特点: (1). 可以将现有的多种Web应用系统联盟起来,同时保障系统的独立性,提供单点 登录服务;

项目概要设计说明书

XX公司 概要设计说明书模板(2014年)

目录 第1 章......................... 简介1 1.1 编写目的 (1) 1.2 文档的控制 (1) 1.3 文档的审批 (1) 1.4 项目干系人 (2) 2.1 业务发展方向 (2) 2.2 当前组织结构 (2) 2.3 当前IT 环境 (3) 2.4 标准约定 (3) 第3 章................... 探索方案和方法3 3.1项目定义............... (3) 3.2系统上下文............. (3) 3.3主题模型............... (4) 3.4功能性需求列表......... (5) 第2 章.................. 业务和需要的理解

3.5 非功能性需求列表 ..................... 8 3.6 用例图 (10) 10 4.1 应用架构概况图 ..................... 10 4.2 架构决策 ........................ 11 4.3 架构部件(组件)模型图 .................. 13 4.4 系统运行部署图 ..................... 13 4.5 项目计划 .............. 错误! 4.6 项目的例外责任 ............ 错误! 4.7 项目依赖 .............. 错误! 4.8 风险和规避 .............. 错误! 4.9 问题和假设 .............. 错误! 4.10 假设条件 .............. 错误! 第5章 .................... 16 5.1 服务级别标准 ....................... 16 5.2 服务资源及规范 (16) 主要业务名词和术语定义 .................... 17 参考文献 . (17) 第4章 .................... 项目交付架构 未定义书签。 未定义书签。 未定义书签。 未定义书签。 未定义书签。 未定义书签。 运营支撑标准

CAS单点登录配置全过程

CAS配置全过程 软件工具: 1.cas-server-3.3.5-release.zip(CAS服务端) 2.cas-client- 3.1.10-release.zip(CAS客户端) 3.apache-tomcat-7.0.40 https://www.wendangku.net/doc/be4457011.html,mons-dbcp-all-1.3-r699049.jar 5.mysql-connector-java-5.1.18-bin.jar 6.cas-server-jdbc-3.0.5-rc2.jar 写在前面的话 此配置是根据当前系统,当前的版本,仅供参考,如果有什么其他的问题可以一起研究。 第一节:先走通技术障碍 第一步:环境部署 1.在Tomcat 根目录下创建一个cas目录。 2.下载CAS服务器并解压,打开cas-server- 3.3.5\modules,将cas-server-webapp-3.3.5.war复制到刚刚在Tomcat创建的cas目录下,并重命名为ROOT.war 3.修改host文件(C:\Windows\System32\drivers\etc)添加 127.0.0.1 https://www.wendangku.net/doc/be4457011.html, 注意:如果想在一台PC机上模拟这个单点登录,就必须域名重定向,如果是多台PC机,

可以不配置此项,下文有用到https://www.wendangku.net/doc/be4457011.html,,可以用相应PC机的IP代替 4.修改Tomcat文件下的server.xml(apache-tomcat-7.0.40\conf\server.xml) 添加内容: 5.启动Tomcat服务,查看信息,(如果有报错,可以根据信息查找错误),打开浏览器,输入https://www.wendangku.net/doc/be4457011.html,:8080如果出现以下界面,则CAS服务端配置成功。 注:这个是最简单的CAS服务,只要输入的用户名跟密码一样,就可以正常登陆,在我们实际开发中,这个验证因为跟数据库作比较,接下来,我们就配置数据库校验。 第二步:配置数据库验证 1.打开deployerConfigContext.xml,在apache-tomcat-7.0.40\cas\ROOT\WEB-INF目录下,找到如下代码: 添加下面代码: 2.增加数据源dataSource, 在deployerConfigContext.xml,(跟上面同一个文件)找到 ,在下面添

java实现简单的单点登录(4)

下面是登录模块DesktopSSOLoginModule的主体:login()方法。逻辑也是非常简单:先用Cookie来登陆,如果成功,则直接就进入系统,否则需要用户输入用户名和密码来登录系统。 public boolean login() throws LoginException{ try { if (Cookielogin()) return true; } catch (IOException ex) { ex.printStackTrace(); } if (passwordlogin()) return true; throw new FailedLoginException(); } 下面是Cookielogin()方法的实体,它的逻辑是:先从Cookie文件中获得相应的Cookie值,通过身份效验服务效验Cookie的有效性。如果cookie有效就算登录成功;如果不成功或Cookie不存在,用cookie登录就算失败。 public boolean Cookielogin() throws LoginException,IOException { String cookieValue=""; int cookieIndex =foundCookie(); if (cookieIndex<0) return false; else cookieValue = getCookieValue(cookieIndex); username = cookieAuth(cookieValue); if (! username.equals("failed")) { loginSuccess = true; return true; } return false; } 用用户名和密码登录的方法要复杂一些,通过Callback的机制和屏幕输入输出进行信息交互,完成用户登录信息的获取;获取信息以后通过userAuth方法来调用远端SSOAuth的服务来判定当前登录的有效性。 public boolean passwordlogin() throws LoginException { // // Since we need input from a user, we need a callback handler if (callbackHandler == null) {

单点登录技术方案

xxxx集团 单点登录技术方案

目录 1. xxxx集团系统建设现状 (4) 1.1. Web应用系统 (4) 1.2. C/S应用系统 (4) 1.3. SSL VPN系统 (4) 2. xxxx集团单点登录系统需求 (5) 2.1. 一站式登录需求 (5) 3. SSO(单点登录)技术简介 (6) 3.1. 修改应用程序SSO方案 (6) 3.2. 即插即用SSO方案 (7) 3.3. 两种SSO方案比较 (7) 3.4. 惠普SSO (7) 3.4.1. 惠普SSO开发背景 (7) 3.4.2. 惠普SSO的功能 (8) 3.4.3. 惠普SSO的特点 (9) 3.4.4. 惠普SSO结构 (10) 4. xxxx集团单点登录技术方案 (11) 4.1. 应用系统中部署惠普SSO单点登录 (11) 4.1.1. 解决全局的单点登录 (12) 4.1.2. 应用系统的整合 (12) 4.1.3. 用户如何过渡到使用单点登录 (13) 4.1.4. 管理员部署业务系统单点登录功能 (14) 4.1.5. 建立高扩展、高容错单点登录环境 (15) 4.1.6. 建立稳定、安全、高速网络环境 (15) 4.2. 定制工作 (16) 4.2.1. SSL VPN结合 (16)

4.2.2. 密码同步 (16) 5. 项目实施进度 (17) 5.1. 基本安装配置 (17) 5.2. 配置认证脚本 (17) 5.3. 总体进度 (17) 6. 硬件清单 (19) 7. 软件清单 (20)

1.xxxx集团系统建设现状 xxxx集团有限责任公司(以下简称集团公司)管理和运营省内11个民用机场,以及20多个关联企业(全资子公司、控股企业、参股企业)。现有的信息系统主要有生产运营系统和管理信息系统,其中生产运营系统包括机场生产运营管理系统、中小机场生产运营管理系统、离港系统、航显系统、广播系统、安检信息管理系统、控制区证件管理系统等,管理信息系统主要有财务系统、OA 系统、邮件系统、资产管理系统、决策支持系统、网站信息发布审批系统、视频点播系统等。这些信息系统的用户包括集团公司所有机场以及关联企业。 各信息系统都有独立的用户组织体系,采用“用户名+密码”的方式来实现身份认证和授权访问。从而与众多企业一样存在如下一些主要问题:1、终端用户需要记住多个用户名和密码;2、终端用户需要登录不同的信息系统以获取信息;3、系统管理员难以应付对用户的管理;4、难以实施系统使用安全方面的管理措施。 1.1.Web应用系统 xxxx集团现有的Web应用系统包括:办公自动化系统(OA)、邮件系统、资产管理系统、内部网站信息发布审批系统、决策支持系统、视频点播系统等。这些系统基本上是各自独立开发的、或者购买的商业软件。每个应用系统都有自己的用户管理机制和用户认证机制,彼此独立。每个应用系统用户名、口令可能各不相同。 1.2.C/S应用系统 xxxx集团目前的C/S应用只有一个:财务系统,金蝶K3财务系统。 1.3.SSL VPN系统 xxxx集团有一套SSL VPN系统,集团局域网之外的用户(包括各地州机场、部分关联企业、用户自己家住房、出差旅馆、无线上网等)是通过SSL VPN 系统进入集团局域网的,通过SSL VPN系统进入集团局域网访问的系统包括:OA系统、邮件系统、资产管理系统、决策支持系统、网站信息发布审批系统及内部网站等。用户经过SSL VPN系统进入集团局域网需要经过身份认证。

CAS认证实现单点登录

CAS认证实现单点登录 一.背景 有几个相对独立的java的web应用系统,各自有自己的登陆验证功能,用户在使用不同的系统的时候,需要登陆不同的系统。现在需要提供一个 统一的登陆/登出界面,而不修改各个系统原来的登陆验证机制。于是采用单点登录系统开源单点登录产品CAS。 随着新的业务网站不断的增加,用户在每个应用系统中都有独立的账号,这样就造成在访问不同的应用系统时,需要记录对应的用户名和密码,多 个用户名密码极易记混,如果忘记或记错了某一个业务网站的用户名或密码就无法进行登录,耽误工作,影响工作效率 允许用户一次性进行认证之后,就访问系统中不同的应用 二.原理 CAS 是一个独立的web 应用, 当前使用Java Servlets 实现,通过HTTPS 协议保证其数据的传输安全性。它通过三个Url 地址进行访问:登录Url、验证URL、注销URL。

三. CAS认证集成 要使用单点登录,需要部署CAS系统,CAS服务端可以直接部署在tomcat下运行,对于CAS服务端来说,所有要集成单点登录的web应用都是它的一个客户端,CAS有客户端jar包,客户端web应用需要引入CAS客户端的jar包,这样CAS系统的服务端和客户端web应用程序端才能通信。 客户端web应用程序的通过配置web.xml,添加CAS需要的各种过滤器,来实现和CAS服务器通信,用户信息验证工作在CAS 服务端统一完成,验证通过后,客户端web应用程序只需要补全自己的Session信息即可。 3.1部署CAS系统服务端 步骤1:准备好以下运行环境 jdk1.6+

tomcat6+ jdk与tomcat的下载、安装、配置在此略过。 步骤2:安装部署cas-server 到官网(https://www.wendangku.net/doc/be4457011.html,/cas/cas-server-3.5.0-release.zip)下载cas-server-3.5.0-release.zip。解压缩以后,在其路 径 cas-server-3.5.0\modules 下面找到 cas-server-webapp-3.5.0.war,将其拷贝到 tomcat 的webapps 下,改名为 cas.war, 并修改 war 包中配置文件 cas.properties 里的 cas server name=cas 并启动 tomcat,启动后可在浏览器访 问 http://localhost:8080/cas/login

单点登录设计原理

https://www.wendangku.net/doc/be4457011.html,/j2eeweiwei/article/details/2381332 单点登录设计原理 分类:权限控管Java 2008-05-04 13:12 244人阅读评论(0) 收藏举报 本文以某新闻单位多媒体数据库系统为例,提出建立企业用户认证中心,实现基于安全策略的统一用户管理、认证和单点登录,解决用户在同时使用多个应用系统时所遇到的重复登录问题。 随着信息技术和网络技术的迅猛发展,企业内部的应用系统越来越多。比如在媒体行业,常见的应用系统就有采编系统、排版系统、印刷系统、广告管理系统、财务系统、办公自动化系统、决策支持系统、客户关系管理系统和网站发布系统等。由于这些系统互相独立,用户在使用每个应用系统之前都必须按照相应的系统身份进行登录,为此用户必须记住每一个系统的用户名和密码,这给用户带来了不少麻烦。特别是随着系统的增多,出错的可能性就会增加,受到非法截获和破坏的可能性也会增大,安全性就会相应降低。针对于这种情况,统一用户认证、单点登录等概念应运而生,同时不断地被应用到企业应用系统中。 统一用户管理的基本原理 一般来说,每个应用系统都拥有独立的用户信息管理功能,用户信息的格式、命名与存储方式也多种多样。当用户需要使用多个应用系统时就会带来用户信息同步问题。用户信息同步会增加系统的复杂性,增加管理的成本。 例如,用户X需要同时使用A系统与B系统,就必须在A系统与B系统中都创建用户X,这样在A、B任一系统中用户X的信息更改后就必须同步至另一系统。如果用户X需要同时使用10个应用系统,用户信息在任何一个系统中做出更改后就必须同步至其他9个系统。用户同步时如果系统出现意外,还要保证数据的完整性,因而同步用户的程序可能会非常复杂。 统一存储(UUMS)、分布授权: 解决用户同步问题的根本办法是建立统一用户管理系统(UUMS)。UUMS统一存储所有应用系统的用户信息,应用系统对用户的相关操作全部通过UUMS完成,而授权等操作则由各应用系统完成,即统一存储、分布授权。

单点登录SSO的定义实现机制及优缺点

一、什么是单点登录S S O(S i n g l e S i g n-O n) SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护资源时,不再需要重新登录验证。 二、单点登录解决了什么问题 解决了用户只需要登录一次就可以访问所有相互信任的应用系统,而不用重复登录。 三、单点登录的技术实现机制 如下图所示: 当用户第一次访问应用系统1的时候,因为还没有登录,会被引导到认证系统中进行登录;根据用户提供的登录信息,认证系统进行身份效验,如果通过效验,应该返回给用户一个认证的凭据--ticket;用户再访问别的应用的时候,就会将这个ticket带上,作为自己认证的凭据,应用系统接受到请求之后会把ticket送到认证系统进行效验,检查ticket的合法性(4,6)。如果通过效验,用户就可以在不用再次登录的情况下访问应用系统2和应用系统3了。 从上图可以看出sso的实现技术点: 1)所有应用系统共享一个身份认证系统。 统一的认证系统是SSO的前提之一。认证系统的主要功能是将用户的登录信息和用户信息库相比较,对用户进行登录认证;认证成功后,认证系统应该生成统一的认证标志(ticket),返还给用户。另外,认证系统还应该对ticket进行效验,判断其有效性。 2)所有应用系统能够识别和提取ticket信息 要实现SSO的功能,让用户只登录一次,就必须让应用系统能够识别已经登录过的用户。应用系统应该能对ticket进行识别和提取,通过与认证系统的通讯,能自动判断当前用户是否登录过,从而完成单点登录的功能。 关于统一身份认证机制:如下图 ?①用户请求访问业务系统。 ②业务系统在系统中查看是否有对应请求的有效令牌,若有,则读取对应的身份信息,允许其访问;若没有或令牌无效,则把用户重定向到统一身份认证平台,并携带业务系统地址,进入第③步。 ③在统一身份认证平台提供的页面中,用户输入身份凭证信息,平台验证此身份凭证信息,若有效,则生成一个有效的令牌给用户,进入第④步;若无效,则继续进行认证,直到认证成功或退出为止。 ④用户携带第③步获取的令牌,再次访问业务系统。 ⑤业务系统获取用户携带的令牌,提交到认证平台进行有效性检查和身份信息获取。 ⑥若令牌通过有效性检查,则认证平台会把令牌对应的用户身份信息返回给业务系统,业务系统把身份信息和有效令牌写入会话状态中,允许用户以此身份信息进行业务系统的各种操作;若令牌未通过有效性检查,则会再次重定向到认证平台,返回第③步。 通过统一身份认证平台获取的有效令牌,可以在各个业务系统之间实现应用漫游。 四、单点登录的优点

单点登录技术文档

单点登录技术文档 张昀* 2006.12 说明:本文档在我们最大努力范围之内确保其正确性、实效性和可观性,但并不代表所有的观点都是正确的,而仅代表个人看法。如发现不当之处,请多指教,谢谢! 另外,本文并不是给初学者看的。虽然我们尽可能把每个概念和操作步骤都说得比较明白,但是如果您对于Linux系统不是很熟的话,很多操作仍然可能存在困难。这种情况下我们建议您直接下载虚拟机安装试用,边实践边学习。 联系邮件:mypersonal1971@https://www.wendangku.net/doc/be4457011.html,。 1、单点登录概述 单点登录的英文名称为Single Sign-On,简写为SSO,它是一个用户认证的过程,允许用户一次性进行认证之后,就访问系统中不同的应用;而不需要访问每个应用时,都重新输入密码。IBM对SSO有一个形象的解释“单点登录、全网漫游”。 SSO将一个企业内部所有域中的用户登录和用户帐号管理集中到一起,SSO的好处显而易见: 1. 减少用户在不同系统中登录耗费的时间,减少用户登录出错的可能性 2. 实现安全的同时避免了处理和保存多套系统用户的认证信息 3. 减少了系统管理员增加、删除用户和修改用户权限的时间 4. 增加了安全性:系统管理员有了更好的方法管理用户,包括可以通过直接禁止和删除用户来取消该用户对所有系统资源的访问权限 对于内部有多种应用系统的企业来说,单点登录的效果是十分明显的。很多国际上的企业已经将单点登录作为系统设计的基本功能之一。 1.1单点登录产品 商业SSO软件 ●专门的SSO商业软件 ?主要有:Netgrity的Siteminder,已经被CA收购。Novell 公司的iChain。RSA公 司的ClearTrust等。 ●门户产品供应商自己的SSO产品, ?如:BEA的WLES,IBM 的Tivoli Access Manager,Sun 公司的identity Server, Oracle公司的OID等。

CAS单点登录

CAS单点登录总结 一、服务端搭建 1.安装JDK。 2.安装Tomcat。安装版本Tomcat7.0. 3.在Tomcat上配置SSl (1)生成证书。在C盘根目录下建立子文件夹“Keys”,用于存放证书。在 JDK安装文件夹下的bin文件夹(C:\Program Files\Java\jre1.8.0_60\bin)下打开“命令窗口”。 (2)执行命令“keytool -genkey -alias tomcat -keyalg RSA -storepass changeit -keystore c:\keys\.keystore -validity 3600”创建证书。 (3)将证书导入的JDK的证书信任库中 第一步:导出证书。 执行命令“keytool -export -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore c:\keys\.keystore -storepass changeit”将证书导出到Keys文件夹。 第二步:将证书导入到JDK证书信任库。 执行命令“keytool -import -trustcacerts -alias tomcat -file c:\keys\tomcat.cer -keystore "C:\Program Files\Java\jre7\lib\security\cacerts" -storepass changeit”。系统询问 是否信任此证书,回答“y” 4、配置server.xml文件 用文本编辑器管理员身份运行,打开Tomcat7.0下的server.xml文件(C:\Program

单点登录分析与设计

目录 1、概述 (3) 2、功能需求 (4) 2.1、身份认证标识管理 (4) 2.2、消息协议 (5) 2.3、日志管理 (5) 3、系统设计 (6) 3.1、网络结构 (6) 3.1、体系架构 (6) 3.2、功能模块 (8) 3.3、数据模型 (9) 3.4、系统接口 (10) 3.4.1、用户登录 (10) 3.4.2、切换认证 (13) 3.4.3、登记接口 (13) 3.4.4、签退 (14) 3.4.5、认证 (15) 4、系统实现 (17) 4.1、用户联系类 (17) 4.2、业务系统信息设置 (17) 4.3、访问业务系统 (18) 4.4、配置文件 (22) 4.5、核心代码 (23) 5、系统测试 (26) 5.1、测试概述 (26) 5.2、测试用例 (26) 5.2.1、用户登录 (26) 5.2.2、切换认证 (28) 5.2.3、签出 (28)

5.2.4、认证 (29) 5.2.5、坐席登录 (30) 5.3、测试结果 (30)

1、概述 单点登录系统在企业信息化平台中作为企业用户、个人用户、平台管理员用户登录注册系统,通过单点登录系统信息化平台中的这三类用户可以实现单点登录多平台访问。实现方式是这三类用户通过单点登录系统进行登录时产生一个登陆表示,通过这个平台唯一的登录标识可以从业务系统跳转到另外一个业务信息。 单点登录系统不存在业务数据维护功能,所以单点登录系统不提供页面功能。单点登录系统的所有功能通过多个WebService接口对外提供,当然这些接口请 求也会通过IP认证的方式进行安全认证。同时对于业务系统进行二次开发会提 供一个开发工具包,开发工具包的主要作用是实现XML字符串和类对象之间的相互转换。 统一身份认证分为业务方面和性能方面两类。 业务问题包括: 1.业务管理人员如何实现跨平台管理。 2.教师、学生实现跨平台查看自己的业务数据。 3.业务系统如何改造满足跨平台访问。 性能问题包括: 1.每一次登录需要进行记录,系统管理人员可以查询。 2.每一次平台之间的切换需要进行记录,系统管理人员可以查询。 3.如何保证网络安全。 4.每秒访问次数不少于80次(单个应用)。 5.应用可以实现堆砌部署,随时添加机器和应用。

基于CAS模式的单点登录系统设计与分析

Computer Science and Application 计算机科学与应用, 2019, 9(7), 1434-1440 Published Online July 2019 in Hans. https://www.wendangku.net/doc/be4457011.html,/journal/csa https://https://www.wendangku.net/doc/be4457011.html,/10.12677/csa.2019.97161 Design and Analysis of Single Sign on System Based on CAS Mode Xiaowei Xu, Jinlei Wang, Wenfei Jiang, Fengjuan Cui North China Sea Data and Information Service, SOA, Qingdao Shandong Received: Jul. 9th, 2019; accepted: Jul. 22nd, 2019; published: Jul. 29th, 2019 Abstract In order to solve the problem of the integration of the existing business application system of NCS, this paper makes a deep research on the principle of CAS integrated authentication, and designs a single sign on system based on CAS mode. Based on the actual situation of various software systems of NCS, this paper analyzes the problems faced by various systems to achieve single sign-on, propos-es different solutions to these problems, and provides technical route for the integration of business application systems of NCS, so as to realize the construction of single sign-on system of NCS. Keywords CAS Authentication, SSO, System Integration 基于CAS模式的单点登录系统设计与分析 徐晓玮,王金磊,姜雯斐,崔凤娟 国家海洋局北海信息中心,山东青岛 收稿日期:2019年7月9日;录用日期:2019年7月22日;发布日期:2019年7月29日 摘要 针对自然资源部北海局现有业务应用系统整合问题,对CAS集成认证原理进行深入研究,设计搭建了基于CAS模式的单点登录系统。结合北海局各类软件系统的实际情况,分析各类系统实现单点登录所面临的问题,针对这些问题提出不同的解决方案,为北海局业务应用系统的整合集成提供技术路线,以实现北海局单点登录系统的建设。

相关文档