`
boli.jiang
  • 浏览: 47023 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

单点登录CAS Client 介绍

    博客分类:
  • java
阅读更多

讲解基于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 实现单点登录验证的示例 Spring Boot 整合 CAS Client 是一种流行的解决方案,用于实现单点登录(Single Sign-On,简称 SSO)。在多个应用系统中,用户只需要登录一次就可以访问所有...

    CASClient集群环境的Session问题及解决方案.docx

    CASClient 是一种开源的单点登录系统,能够提供统一的登录和注销机制。但是在集群环境中应用 CASClient 时,可能会出现一些问题,例如 Session 信息不一致、统一注销的难题等。 Session 信息的问题 在集群环境中...

    cas-client3.5单点登录官方客户端程序demo

    在这个"cas-client3.5单点登录官方客户端程序demo"中,我们可以深入理解如何在Java环境中集成CAS客户端来实现单点登录功能。 首先,CAS客户端3.5是为Java应用程序设计的,它允许这些应用与CAS服务器进行通信,验证...

    基于Cas的单点登录实现

    **基于Cas的单点登录实现** 单点登录(Single Sign-On,简称SSO)是一种在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统的技术。它为用户提供了一种方便、高效的访问多系统的方式,同时减少...

    cas client

    CAS(Central Authentication Service)客户端是一种身份验证框架,用于实现单点登录(Single Sign-On, SSO)。这个Web工程提供了一个简单且完整的CAS客户端实现,旨在帮助开发者快速搭建和部署一个可以与CAS服务器...

    用cas实现mantis单点登录和登出

    本文将详细介绍如何利用 CAS(Central Authentication Service)协议来实现 Mantis 的单点登录和登出功能。 #### 实现步骤 ##### 第一步:环境准备 1. **安装 CAS 服务器**:确保 CAS 服务器已经部署完成,并且...

    CAS多数据库配置单点登录

    下面将详细介绍CAS多数据库配置单点登录的知识点。 一、环境说明 在配置CAS单点登录之前,需要具备以下环境: 1. Tomcat 7.0.62:作为应用服务器,提供了强大的Web应用程序托管能力。 2. JDK 7:作为Java开发工具...

    CAS单点登录CAS4.0.0+.Net Client

    综上所述,CAS 4.0.0+.Net Client是.NET应用程序实现单点登录的重要组件,它通过与CAS服务器的交互确保用户身份的安全验证,并处理Cookie以维护用户的登录状态。正确理解和使用这个客户端可以帮助提升应用程序的安全...

    单点登录cas源码

    CAS(Central Authentication Service)是单点登录的一种实现,它是一个开源的身份验证框架,主要用于Web应用。本主题涉及的是CAS的源码分析。 CAS的核心功能包括身份验证、服务票证(Ticket)管理和代理认证。当...

    java-cas单点登录服务端

    CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,研究如何采用 CAS 实现轻量级单点登录解决方案。 CAS 是 Yale 大学发起的...

    CAS单点登录操作文档

    CAS单点登录操作文档 CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统...• CAS Client 支持非常多的客户端(这里指单点登录系统中的各个 Web 应用),包括 Java, .Net, PHP, Perl, Apache, uPortal, Ruby 等。

    cas 单点登录 server client

    CAS(Central Authentication Service)是Java开发的一个开源单点登录(Single Sign-On,简称SSO)框架,主要用于解决多应用系统中的用户身份验证问题。在单点登录系统中,用户只需要登录一次,就可以访问所有相互...

    单点登录cas服务器demo及springboot客户端demo

    总结起来,这个"单点登录cas服务器demo及springboot客户端demo"项目提供了一个实践单点登录概念的实例,涵盖了CAS服务器的搭建、Spring Boot应用的CAS客户端集成,以及Shiro或Pac4j的使用。对于想要学习和理解SSO...

    CAS-Server-Client单点登录demo

    在这个"CAS-Server-Client单点登录demo"中,我们将深入探讨CAS服务器与客户端的整合以及如何在Apache Tomcat上进行测试。 首先,CAS服务器是整个SSO机制的核心,它负责处理用户的认证请求和验证用户的身份。在"cas-...

    casclient.jar

    总的来说,`casclient.jar`是实现CAS单点登录的关键组件,它简化了与CAS服务器的交互,为Java应用提供了安全、便捷的身份验证解决方案。在部署和配置过程中,确保正确使用和理解`casclient.jar`对于实现高效、安全的...

    CAS单点登录系统.doc

    ### CAS单点登录系统知识点详解 #### 一、CAS简介 CAS(Central Authentication Service)是由耶鲁大学发起的一项开源项目,其目标在于为Web应用提供可靠且统一的单点登录解决方案。自2004年12月起,CAS成为了JA-...

    CAS单点登录demo

    - CAS Client:集成在各个应用系统中,负责识别Ticket并进行验证,从而实现单点登录功能。 3. CAS部署与配置: - 首先,你需要下载并安装Apache Tomcat 6,这是一个流行的Java Servlet容器,用于运行CAS Server。...

    禅道开源版集成CAS单点登录

    本文在已有的禅道集成CAS单点登录的客户端插件基础上进行的修改,因原有插件在我们的系统上调试无法成功,做了一些定制,环境如下: 1. CAS server 版本:4.0.0 2. 禅道开源版本: 9.6.3 3. 禅道CAS client 插件版本...

    cas-client-2.0.11.zip_cas client_cas-clie_cas-client-2._java CAS

    CAS(Central Authentication Service)是耶鲁大学开发的一种开放源代码的单点登录(Single Sign-On,简称SSO)协议,用于网络应用中的身份验证。它允许用户在一个认证点登录后,无需再次输入凭证就能访问其他受保护...

    单点登录cas参考

    ### CAS单点登录框架 #### 一、CAS简介 单点登录(Single Sign On,简称SSO)是一种用户登录管理方式,用户只需要在一处登录,即可访问多个应用系统。这种方式为用户和系统管理员提供了便利,增强了用户体验,简化...

Global site tag (gtag.js) - Google Analytics