在网上找了很多资料。终于让CAS跑起来了:修改CAS服务端名称、屏蔽SSL,单点登入、单点登出。
版本:CAS Server 3.4.7, CAS Client 3.1.10/3.2.0
(1) 禁用SSL认证
/WEB-INF/spring-configuration/ticketGrantingTicketCookieGenerator.xml
p:cookieSecure="false"
(2) 修改了CAS服务端部署名称,如我改为了rhin-cas
根据网络资料描述,只需要改名就好。其实还需要修改几处,否则单点登出和访问CAS内部路径会有问题(注:以下文件均为服务端文件):
/WEB-INF/spring-configuration/ticketGrantingTicketCookieGenerator.xml
p:cookiePath="/rhin-cas"
/WEB-INF/cas.properties
*cas.securityContext.serviceProperties.service=http://localhost:8080/rhin-cas/services/j_acegi_cas_security_check
*cas.securityContext.casProcessingFilterEntryPoint.loginUrl=http://localhost:8080/rhin-cas/login
*cas.securityContext.ticketValidator.casServerUrlPrefix=http://localhost:8080/rhin-cas
*host.name=rhin-cas
(3) 单点登出,客户端配置。我尝试使用SAML作为认证和Ticket校验,但是调试时发现单点登出取标识的方式只能识别CAS的认证和校验。
认证:org.jasig.cas.client.authentication.AuthenticationFilter
校验:org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter
过滤器顺序:
1. CAS Single Sign Out Filter
2. CAS Validation Filter
3. CAS Authentication Filter
4. CAS HttpServletRequest Wrapper Filter
5. CAS Assertion Thread Local Filter
特别注意Validation在Authentication之前,因为我使用的是Cas20ProxyReceivingTicketValidationFilter。根据CAS文档描述:If you are using proxy validation, you should map the validation filter before the authentication filter.
解释为何默认配置不能使用SAML,大致说一下,不一定对。
调试SingleSignOutFilter可知hander.isTokenRequest其中对token参数校验是URL中包含ticket参数,这个只有CAS认证方式下才有,SAML是没有ticket参数的,是叫另外的名字。如果需要用SAML需要配置web.xml中SingleSignOutFilter的init-param:artifactParameterName
好像是叫SAML**什么的。这个具体你使用SAML认证方式时就看到了。
由于我没有具体研究SAML和CAS认证的差别,所以就没管了。
大概就是这么多,其他的配置方法网上很多。
分享到:
相关推荐
6. **部署CAS Server**:将修改后的CAS Server应用打包成WAR文件,然后将其放入Tomcat的`webapps`目录下,启动服务器,CAS Server即被部署成功。 接下来,我们转向cas-java-client 3.2的使用。这是一个Java客户端库...
基础的CAS协议包括以下几个步骤: 1. 用户尝试访问受保护资源。 2. CAS Client检测到无有效的Service Ticket,重定向用户至CAS Server。 3. 用户在CAS Server上输入认证信息。 4. 如果认证成功,CAS Server生成...
在实际应用中,可能还需要考虑以下几个方面来完善单点登出功能: - **状态跟踪**:确保所有已登录的应用都能接收到登出请求,可能需要维护一个记录已登录应用的列表。 - **安全考虑**:登出请求的传输应使用HTTPS以...
在无证书环境下部署CAS Server,主要涉及到以下几个步骤: 1. **下载并准备所需包**: - 需要下载`cas-server-3.5.2-release`包,并从中提取`cas-server-webapp-3.5.2.war`文件。 - 将`cas-server-webapp-3.5.2....
配置CAS Server涉及以下几个步骤: 1. **环境搭建**:首先需要安装Java运行环境,并下载CAS Server的源码或二进制包,部署在服务器上。 2. **数据库配置**:CAS Server通常需要一个数据库来存储用户信息和会话数据...
2. **客户端集成**:在客户端应用程序中集成CAS通常涉及到以下几个步骤: - 添加CAS客户端库:选择适合你应用程序语言的CAS客户端库,例如对于Java,可以使用Spring Security CAS。 - 配置CAS客户端:在客户端的...
在实际部署CAS时,需要注意以下几点: 1. 安全配置:确保CAS服务器和通信过程的安全,如使用HTTPS、加密传输等。 2. 权限策略:合理规划用户角色和权限,避免权限滥用。 3. 集成测试:在实施SSO前,应充分测试各个...
### CAS服务端部署详解 ...通过以上步骤,您就可以成功部署CAS Server,并实现单点登录的功能。CAS Server的部署不仅可以简化用户的登录流程,还能提高系统的安全性和管理效率,是企业级应用中不可或缺的一部分。
配置CAS单点登录主要涉及以下几个步骤: 1. **安装CAS服务器**:首先,你需要下载并安装CAS服务器,通常选择最新稳定版本。这包括设置Java环境,获取CAS服务器的WAR文件,并将其部署到Servlet容器(如Tomcat)中。 ...
部署CAS Server通常涉及以下几个步骤: 1. 配置Tomcat支持HTTPS:这需要安装SSL证书,并在Tomcat的配置文件中启用SSL支持。 2. 下载并部署CAS Server:从官方下载CAS Server的WAR文件,将其放入Tomcat的webapps目录...
源代码分析可以帮助我们理解以下几个关键组件: - **TicketGranter**:负责生成和验证服务票据。 - **AuthenticationManager**:处理用户的登录验证。 - **ProxyGrantingTicket**:用于支持代理认证,使得一个已...
在实现Spring Security与CAS的集成过程中,主要涉及以下几个关键知识点: 1. **Spring Security基本概念**:理解Spring Security的核心组件,如Filter Chain、Authentication Provider、Access Decision Manager等...
在CAS 2.5.3中,主要涉及以下几个关键组件: 1. CAS服务器:这是核心组件,负责验证用户的凭证,如用户名和密码。当用户尝试访问受保护的资源时,会被重定向到CAS服务器进行认证。 2. 客户端:应用系统作为CAS...
为了实现单点登录,我们还需要关注以下几个关键点: 1. **服务注册**:每个需要SSO保护的应用需要在CAS服务器上注册,这样CAS才能识别并验证服务请求。 2. **代理认证**(Proxy Authentication):在某些情况下,...
这个版本可能包括以下几个关键部分: - **CAS服务器核心**: 提供身份验证和授权的核心服务。 - **Web应用程序**: 实现了CAS服务器的用户界面,用户在这里进行登录操作。 - **配置文件**: 包含服务器的设置,如...
- **CAS的基础协议流程**主要包括以下几个步骤: 1. 用户尝试访问某个受保护的资源。 2. CASClient检测到未认证状态,将用户重定向至CASServer的登录页面。 3. 用户提交登录信息,CASServer验证后返回一个Service...
3. **CAS客户端配置**:安装和配置CAS客户端通常涉及以下几个步骤:导入相关的JAR库,配置客户端的属性文件(如cas.properties),定义服务URL和CAS服务器的地址,以及处理服务票证验证的过滤器设置。 4. **cas-...
通过深入研究这个示例,你可以学习到如何自定义和部署CAS服务器,以及如何在自己的应用中集成CAS客户端,这对于理解和实现SSO解决方案具有很大的价值。同时,这也为你提供了一个了解SSH框架(Spring Security和...
1. **CAS服务器部署**:通常情况下,需要在独立的服务器上部署CAS服务器,确保其稳定性和高可用性。 2. **应用集成**:应用需要通过CAS客户端或其他方式与CAS服务器进行交互,实现单点登录的功能。 3. **安全配置**...