讲解基于CAS Client 2.1.1
CAS Client配置
在web.xml中添加如下的代码:
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>com.goldarmor.live800.cas.Live800CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>http://jiangboli:8080/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>http://jiangboli:8080/cas/serviceValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>jiangboli:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/hello</url-patter
</filter-mapping>
大家可能也看到了,<filter-class>com.goldarmor.live800.cas.Live800CASFilter</filter-class>指定的类并不是edu.yale.its.tp.cas.client.filter.CASFilter。没错,我们可以指定自己的filter来完成自己想要到功能。
指定的参数说明:(必须)
edu.yale.its.tp.cas.client.filter.loginUrl
|
指定 CAS 提供登录页面的 URL |
edu.yale.its.tp.cas.client.filter.validateUrl
|
指定 CAS 提供 service ticket 或 proxy ticket 验证服务的 URL
|
edu.yale.its.tp.cas.client.filter.serverName |
指定客户端的域名和端口,是指客户端应用所在机器而不是 CAS Server 所在机器,该参数或 serviceUrl 至少有一个必须指定 |
edu.yale.its.tp.cas.client.filter.serviceUrl
|
该参数指定过后将覆盖 serverName 参数,成为登录成功过后重定向的目的地址
|
可选参数:
edu.yale.its.tp.cas.client.filter.proxyCallbackUrl |
用于当前应用需要作为其他服务的代理(proxy)时获取 Proxy Granting Ticket 的地址
|
edu.yale.its.tp.cas.client.filter.authorizedProxy |
用于允许当前应用从代理处获取 proxy tickets,该参数接受以空格分隔开的多个 proxy
URLs,但实际使用只需要一个成功即可。当指定该参数过后,需要修改 validateUrl 到 proxyValidate,而不再是
serviceValidate |
edu.yale.its.tp.cas.client.filter.renew
|
如果指定为 true,那么受保护的资源每次被访问时均要求用户重新进行验证,而不管之前是否已经通过 |
edu.yale.its.tp.cas.client.filter.wrapRequest |
如果指定为 true,那么 CASFilter 将重新包装 HttpRequest,并且使 getRemoteUser()
方法返回当前登录用户的用户名
|
edu.yale.its.tp.cas.client.filter.gateway
|
指定 gateway 属性 |
CAS支持http
CAS默认支持的是https,不过通过修改源代码可以实现http的请求方式:
edu.yale.its.tp.cas.client.filter.CASFilter中的init(FilterConfig config)以下代码注销掉
if (! casValidate.startsWith("https://")){
throw new ServletException("validateUrl must start with https://, its current value is [" + casValidate + "]");
}
edu.yale.its.tp.cas.util.SecureURL的retrieve(String url)中以下代码注销掉
if (!u.getProtocol().equals("https")){
// IOException may not be the best exception we could throw here
// since the problem is with the URL argument we were passed, not
// IO. -awp9
log.error("retrieve(" + url + ") on an illegal URL since protocol was not https.");
throw new IOException("only 'https' URLs are valid for this method");
}
CAS Server 端的修改请查看单点登录CAS Server 介绍
分享到:
相关推荐
Spring Boot 整合 CAS Client 实现单点登录验证的示例 Spring Boot 整合 CAS Client 是一种流行的解决方案,用于实现单点登录(Single Sign-On,简称 SSO)。在多个应用系统中,用户只需要登录一次就可以访问所有...
CASClient 是一种开源的单点登录系统,能够提供统一的登录和注销机制。但是在集群环境中应用 CASClient 时,可能会出现一些问题,例如 Session 信息不一致、统一注销的难题等。 Session 信息的问题 在集群环境中...
在这个"cas-client3.5单点登录官方客户端程序demo"中,我们可以深入理解如何在Java环境中集成CAS客户端来实现单点登录功能。 首先,CAS客户端3.5是为Java应用程序设计的,它允许这些应用与CAS服务器进行通信,验证...
**基于Cas的单点登录实现** 单点登录(Single Sign-On,简称SSO)是一种在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的技术。它为用户提供了一种方便、高效的访问多系统的方式,同时减少...
CAS(Central Authentication Service)客户端是一种身份验证框架,用于实现单点登录(Single Sign-On, SSO)。这个Web工程提供了一个简单且完整的CAS客户端实现,旨在帮助开发者快速搭建和部署一个可以与CAS服务器...
本文将详细介绍如何利用 CAS(Central Authentication Service)协议来实现 Mantis 的单点登录和登出功能。 #### 实现步骤 ##### 第一步:环境准备 1. **安装 CAS 服务器**:确保 CAS 服务器已经部署完成,并且...
下面将详细介绍CAS多数据库配置单点登录的知识点。 一、环境说明 在配置CAS单点登录之前,需要具备以下环境: 1. Tomcat 7.0.62:作为应用服务器,提供了强大的Web应用程序托管能力。 2. JDK 7:作为Java开发工具...
综上所述,CAS 4.0.0+.Net Client是.NET应用程序实现单点登录的重要组件,它通过与CAS服务器的交互确保用户身份的安全验证,并处理Cookie以维护用户的登录状态。正确理解和使用这个客户端可以帮助提升应用程序的安全...
CAS(Central Authentication Service)是单点登录的一种实现,它是一个开源的身份验证框架,主要用于Web应用。本主题涉及的是CAS的源码分析。 CAS的核心功能包括身份验证、服务票证(Ticket)管理和代理认证。当...
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,研究如何采用 CAS 实现轻量级单点登录解决方案。 CAS 是 Yale 大学发起的...
CAS单点登录操作文档 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统...• CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。
CAS(Central Authentication Service)是Java开发的一个开源单点登录(Single Sign-On,简称SSO)框架,主要用于解决多应用系统中的用户身份验证问题。在单点登录系统中,用户只需要登录一次,就可以访问所有相互...
总结起来,这个"单点登录cas服务器demo及springboot客户端demo"项目提供了一个实践单点登录概念的实例,涵盖了CAS服务器的搭建、Spring Boot应用的CAS客户端集成,以及Shiro或Pac4j的使用。对于想要学习和理解SSO...
在这个"CAS-Server-Client单点登录demo"中,我们将深入探讨CAS服务器与客户端的整合以及如何在Apache Tomcat上进行测试。 首先,CAS服务器是整个SSO机制的核心,它负责处理用户的认证请求和验证用户的身份。在"cas-...
总的来说,`casclient.jar`是实现CAS单点登录的关键组件,它简化了与CAS服务器的交互,为Java应用提供了安全、便捷的身份验证解决方案。在部署和配置过程中,确保正确使用和理解`casclient.jar`对于实现高效、安全的...
### CAS单点登录系统知识点详解 #### 一、CAS简介 CAS(Central Authentication Service)是由耶鲁大学发起的一项开源项目,其目标在于为Web应用提供可靠且统一的单点登录解决方案。自2004年12月起,CAS成为了JA-...
- CAS Client:集成在各个应用系统中,负责识别Ticket并进行验证,从而实现单点登录功能。 3. CAS部署与配置: - 首先,你需要下载并安装Apache Tomcat 6,这是一个流行的Java Servlet容器,用于运行CAS Server。...
本文在已有的禅道集成CAS单点登录的客户端插件基础上进行的修改,因原有插件在我们的系统上调试无法成功,做了一些定制,环境如下: 1. CAS server 版本:4.0.0 2. 禅道开源版本: 9.6.3 3. 禅道CAS client 插件版本...
CAS(Central Authentication Service)是耶鲁大学开发的一种开放源代码的单点登录(Single Sign-On,简称SSO)协议,用于网络应用中的身份验证。它允许用户在一个认证点登录后,无需再次输入凭证就能访问其他受保护...
### CAS单点登录框架 #### 一、CAS简介 单点登录(Single Sign On,简称SSO)是一种用户登录管理方式,用户只需要在一处登录,即可访问多个应用系统。这种方式为用户和系统管理员提供了便利,增强了用户体验,简化...