最近,在做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");
}
把这段内容注释掉
分享到:
相关推荐
"CAS取消https认证的方式 - zzxplayful - JavaEye技术网站.mht"可能讨论了这个话题,解释了何时何地以及如何调整CAS的配置以适应不同的安全策略。 这些笔记资料涵盖了CAS从基础到进阶的多个方面,对于开发者来说,...
2. **取消CAS服务器HTTPS认证** - 由于默认情况下CAS服务器使用HTTPS,但为了简化配置,我们将取消此要求。你需要编辑以下三个文件: - `cas\WEB-INF\spring-configuration\ticketGrantingTicketCookieGenerator....
CAS系统会将用户的认证信息存储在Cookie或Session中,以便在用户访问不同的应用系统时,自动进行认证。 二、CAS单点登录系统的优点 CAS单点登录系统的优点主要包括: * 减少用户在不同系统中登录耗费的时间,减少...
2. 配置CAS Server,包括设置服务端口、认证方式等。 3. 集成CAS Client到你的应用中,配置CasFilter和CasServerLoginUrlFilter等。 4. 使用Maven构建项目并运行服务器和客户端。 5. 测试单点登录功能,确保用户在...
CAS(Central Authentication Service,中央认证服务)是耶鲁大学开发的一个开源的身份验证框架,它为Web应用程序提供了单一登录(Single Sign-On,SSO)功能。这篇文章将详细介绍如何部署Yale CAS Server以及如何在...
本实战课程围绕CAS(Central Authentication Service)和SpringSecurity两大组件,深入探讨如何在分布式环境中实现高效、安全的SSO与授权认证。 首先,CAS是开源的身份验证框架,主要负责用户的登录验证。在"搭建...
单点登录(Single Sign-On,简称 SSO)是一种常见的身份认证模式,它允许用户在多个应用程序和服务中仅通过一次登录就能访问所有相关系统而无需多次输入密码。这种机制极大地提高了用户体验,并且在一定程度上增强了...
在Java中,你可以使用`CasClientConfigurer`来配置CAS客户端,包括指定服务URL、认证URL等。然后,你可以创建一个`CasAssertionAuthenticationToken`,通过它的`getPrincipal()`方法获取包含用户信息的`Principal`...
具体配置步骤未在提供的内容中详细说明,但通常会涉及修改CAS Server和Client之间的通信协议,如从HTTPS改为HTTP,取消或禁用SSL相关设置。 在实际操作中,带证书的配置方法提供了更强的安全性,通过SSL/TLS协议...
CAS允许客户端应用通过一个中心认证服务器来验证用户的凭证。这种方式极大地简化了用户在多个应用间的登录流程,并提高了系统的整体安全性。 #### 二、取消HTTPS支持 对于某些应用场景而言,可能出于性能或其他...
- 配置`deployerConfigContext.xml`:取消`SimpleTestUsernamePasswordAuthenticationHandler`的注释,启用`QueryDatabaseAuthenticationHandler`,以查询数据库进行身份验证。同时,添加一个数据源`dataSource`,...
通过这种方式,CAS能够有效地管理用户认证,同时减少用户在多个应用之间反复登录的麻烦,提高用户体验,同时也强化了系统的安全性。对于大型企业或组织来说,这种集中式的身份验证服务是管理和保护用户账户安全的...
CAS(Central Authentication Service)是一种单点登录协议,被广泛应用于教育机构及企业内部应用系统的统一身份认证。本文将基于《CAS配置手册[归纳].pdf》文件提供的内容,深入解析CAS服务器与客户端的配置过程,...
Koa CAS认证 这是设计用于Koa服务器的CAS身份验证库。 它提供了两个中间件功能来控制对路由的访问: bounce :将未经身份验证的客户端重定向到CAS登录页面,然后返回到请求的页面。 block :完全拒绝访问未经身份...
Express CAS认证 这是旨在与Express服务器一起使用的CAS身份验证库。 它提供了两个中间件功能来控制对路由的访问: bounce :将未经身份验证的客户端重定向到CAS登录页面,然后返回到请求的页面。 block :完全...
2015-05-27cas 使用http,去掉证书认证;cas 配置mysql 的数据源;create table user_ (screenName varchar(30), password_ varchar(45) , primary key (screenName))insert into user_ (screenName,password_) ...