`
zzxplayful
  • 浏览: 51977 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

CAS取消https认证的方式

阅读更多
    最近,在做CAS单点登陆的一个模块,由于公司的产品太多,各个系统都要部署,在开发中Https的证书的部署比较麻烦,所以,打算把CAS的Https去掉。具体的修改如下

1.修改cas-servlet.xml
<bean id="warnCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
		p:cookieSecure="true"
		p:cookieMaxAge="-1"
		p:cookieName="CASPRIVACY"
		p:cookiePath="/cas" />
	
	<bean id="ticketGrantingTicketCookieGenerator" class="org.jasig.cas.web.support.CookieRetrievingCookieGenerator"
		p:cookieSecure="true "
		p:cookieMaxAge="-1"
		p:cookieName="CASTGC"
		p:cookiePath="/cas" />


把上面连个bean中的p:cookieSecure="true "修改为p:cookieSecure="false"
2.修改deployerConfigContext.xml
<bean class="org.jasig.cas.authentication.handler.support.HttpBasedServiceCredentialsAuthenticationHandler"
					p:httpClient-ref="httpClient" />


添加p:requireSecurep="httpClient"

3.修改casclient的客户端

修改客户端的https验证
(1).edu.yale.its.tp.cas.client.filter.edu.yale.its.tp.cas.client.filter

if (! casValidate.startsWith("https://")){
            throw new ServletException("validateUrl must start with https://, its current value is [" + casValidate + "]");
        }
if (casServiceUrl != null){
            if (! (casServiceUrl.startsWith("https://")|| (casServiceUrl.startsWith("http://") ))){
                throw new ServletException("service URL must start with http:// or https://; its current value is [" + casServiceUrl + "]");
            }
        }


把这两段内容注释掉

(2).修改edu.yale.its.tp.cas.util.SecureURL

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");
            }



把这段内容注释掉

4
2
分享到:
评论
5 楼 frederick_hai 2010-09-19  
请问各位是否了解 在cas3版本如何将https换成http
4 楼 lean1252 2009-08-05  
改过以后,抛出

javax.servlet.ServletException: Authentication was technically successful but rejected as a matter of policy. [[edu.yale.its.tp.cas.client.CASReceipt userName=[asflex] casValidateUrl=[http://asflex:8080/cas/serviceValidate] proxyCallbackUrl=[null] pgtIou=[null] casValidateUrl=[http://asflex:8080/cas/serviceValidate] proxyList=[[]]]]

异常,是不是还要改哪个地方?
3 楼 lean1252 2009-08-05  
改过以后,抛出
javax.servlet.ServletException: Authentication was technically successful but rejected as a matter of policy. [[edu.yale.its.tp.cas.client.CASReceipt userName=[asflex] casValidateUrl=[http://asflex:8080/cas/serviceValidate] proxyCallbackUrl=[null] pgtIou=[null] casValidateUrl=[http://asflex:8080/cas/serviceValidate] proxyList=[[]]]]
异常,是不是还要改哪个地方?
2 楼 macun 2008-10-09  
用过cas的proxy模式吗?这个模式在客户端和服务器端应该怎么配置?我用的是cas-client-3.1和cas-server-3.2版本的。
1 楼 lynxpengpeng 2008-10-07  
我想请教一个问题。用cas配置成功之后,系统的授权工作怎么做啊?没有cas之前,原系统登录后会在session 里存用户信息之类的,然后通过session 的内容判断权限,是不是有了cas之后,原系统的登录机制没用了,原系统的权限认证和管理就不用了。谢谢,疑惑中。。

相关推荐

    CAS 开发综合笔记

    "CAS取消https认证的方式 - zzxplayful - JavaEye技术网站.mht"可能讨论了这个话题,解释了何时何地以及如何调整CAS的配置以适应不同的安全策略。 这些笔记资料涵盖了CAS从基础到进阶的多个方面,对于开发者来说,...

    liferay+cas实现单点登录步骤

    2. **取消CAS服务器HTTPS认证** - 由于默认情况下CAS服务器使用HTTPS,但为了简化配置,我们将取消此要求。你需要编辑以下三个文件: - `cas\WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator....

    CAS实现原理与例子

    CAS系统会将用户的认证信息存储在Cookie或Session中,以便在用户访问不同的应用系统时,自动进行认证。 二、CAS单点登录系统的优点 CAS单点登录系统的优点主要包括: * 减少用户在不同系统中登录耗费的时间,减少...

    cas单点登录自己写的测试例子

    2. 配置CAS Server,包括设置服务端口、认证方式等。 3. 集成CAS Client到你的应用中,配置CasFilter和CasServerLoginUrlFilter等。 4. 使用Maven构建项目并运行服务器和客户端。 5. 测试单点登录功能,确保用户在...

    Yale CAS Server的部署及cas-java-client 3.2的应用

    CAS(Central Authentication Service,中央认证服务)是耶鲁大学开发的一个开源的身份验证框架,它为Web应用程序提供了单一登录(Single Sign-On,SSO)功能。这篇文章将详细介绍如何部署Yale CAS Server以及如何在...

    分布式架构单点登录+授权认证实战 CAS+SpringSecurity视频

    本实战课程围绕CAS(Central Authentication Service)和SpringSecurity两大组件,深入探讨如何在分布式环境中实现高效、安全的SSO与授权认证。 首先,CAS是开源的身份验证框架,主要负责用户的登录验证。在"搭建...

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

    单点登录(Single Sign-On,简称 SSO)是一种常见的身份认证模式,它允许用户在多个应用程序和服务中仅通过一次登录就能访问所有相关系统而无需多次输入密码。这种机制极大地提高了用户体验,并且在一定程度上增强了...

    cas sso学习心得

    在Java中,你可以使用`CasClientConfigurer`来配置CAS客户端,包括指定服务URL、认证URL等。然后,你可以创建一个`CasAssertionAuthenticationToken`,通过它的`getPrincipal()`方法获取包含用户信息的`Principal`...

    CAS实战4.0

    具体配置步骤未在提供的内容中详细说明,但通常会涉及修改CAS Server和Client之间的通信协议,如从HTTPS改为HTTP,取消或禁用SSL相关设置。 在实际操作中,带证书的配置方法提供了更强的安全性,通过SSL/TLS协议...

    cas 单点登录

    CAS允许客户端应用通过一个中心认证服务器来验证用户的凭证。这种方式极大地简化了用户在多个应用间的登录流程,并提高了系统的整体安全性。 #### 二、取消HTTPS支持 对于某些应用场景而言,可能出于性能或其他...

    Liferay5.2.3和CAS配置成SSO

    - 配置`deployerConfigContext.xml`:取消`SimpleTestUsernamePasswordAuthenticationHandler`的注释,启用`QueryDatabaseAuthenticationHandler`,以查询数据库进行身份验证。同时,添加一个数据源`dataSource`,...

    CAS配置手册.docx

    通过这种方式,CAS能够有效地管理用户认证,同时减少用户在多个应用之间反复登录的麻烦,提高用户体验,同时也强化了系统的安全性。对于大型企业或组织来说,这种集中式的身份验证服务是管理和保护用户账户安全的...

    CAS配置手册[归纳].pdf

    CAS(Central Authentication Service)是一种单点登录协议,被广泛应用于教育机构及企业内部应用系统的统一身份认证。本文将基于《CAS配置手册[归纳].pdf》文件提供的内容,深入解析CAS服务器与客户端的配置过程,...

    koa2-sso:也是cas中间件

    Koa CAS认证 这是设计用于Koa服务器的CAS身份验证库。 它提供了两个中间件功能来控制对路由的访问: bounce :将未经身份验证的客户端重定向到CAS登录页面,然后返回到请求的页面。 block :完全拒绝访问未经身份...

    cas-authentication:设计为用作Express服务器中间件的CAS身份验证库

    Express CAS认证 这是旨在与Express服务器一起使用的CAS身份验证库。 它提供了两个中间件功能来控制对路由的访问: bounce :将未经身份验证的客户端重定向到CAS登录页面,然后返回到请求的页面。 block :完全...

    cas-server-webapp-4.0.0:sso 单点登陆; 使用http,去掉证书认证; 配置mysql 数据元;

    2015-05-27cas 使用http,去掉证书认证;cas 配置mysql 的数据源;create table user_ (screenName varchar(30), password_ varchar(45) , primary key (screenName))insert into user_ (screenName,password_) ...

Global site tag (gtag.js) - Google Analytics