单点登录SSO(Single
Sign-On)是身份管理中的一部分。当一个大系统中存在多个子系统时,用户只需要正确登陆其中任何一个子系统,就可以在各个子系统中来回自由切换和使
用。CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架。
CAS介绍
CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为
JA-SIG 的一个项目。CAS 具有以下特点:
1、开源的企业级单点登录解决方案。
2、CAS Server 为需要独立部署的 Web 应用。
3、CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java, .Net, PHP, Perl,
Apache, uPortal, Ruby 等。
CAS原理和协议
CAS从结构上来说包括俩部分,分别是CAS Server和CAS Client。
CAS Server需要独立部署,主要负责认证工作,CAS
Client负责处理对客户端访问受限资源的访问请求,当针对该资源的访问需要登录时重定向到CAS Server。
其基本的协议过程如下图:
图例说明:
CAS Client 与受保护的客户端应用部署在一起,以 Filter 方式保护受保护的资源。
Step1: 用户第一次访问Biz系统主页http://bizserver/index.jsp
;部署在Biz系统上的CAS Client会验证该用户是否已经登录(验证方法:首先判断session中是否含有receipt,如果已经有了即表示已经验证成功可以访问,否则会分析该请求中是否包含ticket,如果没有表示还未登录,有表示已经登录),将用户重定向到CAS登录界面
https://casserver/cas/servlet/login?service=http://bizserver/index.jsp
,同时在重定向的URL上用service参数将用户的目标地址传给CAS服务器。
Step2:用户在CAS的登录页上输入用户名密码登录,CAS服务器认证通过后,生成一个ticket,并带在目标地址的尾部返回客户端的浏览
器redirect:http://bizserver/index.jsp?ticket=service ticket.
Step3:客户端浏览器获得CAS服务器的认证应答,取得凭证ticket后,使用重定向的链接http://bizserver
/index.jsp?ticket=casticket访问Biz服务
Step4: 重复step1的步骤,部署在BizServer上的CAS Client获取到了ticketticket凭证,表示已经登录成功。Filter将使用该凭证通过URL
https://casserver/cas/servlet/validate?service=
http://bizserver/index.jsp &ticket=casticket
向CAS认证中心确认对应的服务请求和凭证是否有效。根据CAS服务器返回的结果,如果凭证有效,则CAS Client允许用户进入
http://bizserver/index.jsp
所指向的页面;否则,再次重定向到https://casserver/cas/servlet/login?service=http:
//bizserver/index.jsp 上要求用户进行认证。
下面将详细的介绍CAS Server 和 CAS Client。
参考文章:
1.http://linliangyi2007.iteye.com/blog/165310
2.http://www.ibm.com/developerworks/cn/opensource/os-cn-cas/index.html
- 描述: 使用的是http://linliangyi2007.javaeye.com/blog/165310中的图片
- 大小: 31.4 KB
分享到:
相关推荐
cas 单点登录解决方案 cas 单点登录解决方案是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。随着企业的发展,业务系统的数量...
本文将详细介绍如何利用 CAS(Central Authentication Service)协议来实现 Mantis 的单点登录和登出功能。 #### 实现步骤 ##### 第一步:环境准备 1. **安装 CAS 服务器**:确保 CAS 服务器已经部署完成,并且...
CAS(Central Authentication Service)是单点登录的一种实现,它是一个开源的身份验证框架,主要用于Web应用。本主题涉及的是CAS的源码分析。 CAS的核心功能包括身份验证、服务票证(Ticket)管理和代理认证。当...
单点登录CAS方案,同时提供CAS+HTTP+Oracle和CAS+HTTPS+Oracle两种方案,亲自测试OK,客户端修改方案自行百度,太简单
单点登录(Single Sign-On,简称SSO)是一种网络...总的来说,单点登录CAS是一个强大的工具,它能够提高企业或组织的IT系统安全性,提升用户满意度。理解和掌握CAS的原理及实施方法,对于IT专业人员来说是十分重要的。
CAS单点登录CAS单点登录CAS单点登录CAS单点登录
**基于Cas的单点登录实现** 单点登录(Single Sign-On,简称SSO)是一种在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的技术。它为用户提供了一种方便、高效的访问多系统的方式,同时减少...
单点登录(Single Sign-On,简称SSO)是一种身份验证机制,允许用户在一个系统中登录后,无需再次认证即可访问其他相互信任的系统。这种机制有效地解决了用户在多系统环境中频繁登录的问题,提高了工作效率。 在...
本压缩包"集成cas实现单点登录认证.zip"显然包含了关于如何使用CAS(Central Authentication Service)框架集成SSO认证的资源。下面我们将详细探讨相关的知识点。 1. CAS简介:CAS是耶鲁大学开源的一个Web应用的...
单点登录服务端项目cas-server单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-server 单点登录服务端项目cas-...
CAS单点登录操作文档 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 12 月正式成为 JA-SIG 的一个项目。CAS 具有以下特点: • 开源的企业级单点登录解决...
本文将详细介绍开源ITSM工具iTop接入开源单点登录框架CAS的实现方法。该方法经过实践验证,已经在作者的单位中应用。 CAS框架简介 CAS(Central Authentication Service)是一种开源的单点登录框架,旨在提供一个...
本资源“单点登录CAS.net客户端源码”提供了实现CAS协议的.NET客户端源代码,适用于.NET框架的项目。 首先,我们需要理解CAS的基本工作流程。当用户尝试访问一个受CAS保护的资源时,会被重定向到CAS服务器进行身份...
CAS 5.3 及 Windows AD 域实现单点登录免身份认证 CAS(Central Authentication Service)是一种流行的开源身份验证系统,旨在提供单点登录(SSO)解决方案。Windows AD(Active Directory)则是微软公司推出的目录...
CAS(Central Authentication Service)单点登录系统是一种网络身份验证协议,它允许用户通过单一的身份验证过程访问多个应用系统。在本“CAS单点登录demo”中,我们将深入探讨CAS的工作原理、配置步骤以及如何实现...
基于Java中CAS的单点登录,有服务端的所有源码,将tomcat目录下的所有资源直接拷到Tomcat服务中间件的webapp目录下,阅读tomcat-webapp中的read.txt文档,查看使用说明,适用于第一次开发CAS单点登录的同学们,简单...
CAS(Central Authentication Service)是 Yale 大学开源的一个单点登录协议,它提供了一种集中式的认证方式,简化了多应用系统的身份验证流程。 **单点登录原理** 单点登录的核心在于一个中心认证服务器(CAS ...
本文在已有的禅道集成CAS单点登录的客户端插件基础上进行的修改,因原有插件在我们的系统上调试无法成功,做了一些定制,环境如下: 1. CAS server 版本:4.0.0 2. 禅道开源版本: 9.6.3 3. 禅道CAS client 插件版本...
spring下使用shiro+cas配置单点登录,多个系统之间的访问,每次只需要登录一次 ## 系统模块说明 1. cas: 单点登录模块,这里直接拿的是cas的项目改了点样式而已 2. doc: 文档目录,里面有数据库生成语句,采用的...
本示例将详细介绍如何在.NET项目中集成CAS单点登录。 首先,我们需要理解单点登录的概念。单点登录允许用户在一个系统中登录后,可以无须再次认证即可访问其他相互信任的系统,提高了用户体验和安全性。CAS作为一个...