环境准备:
1. 安装JDK(安装目录必须无空格,默认安装Program Files目录会导致某些命令不能运行);
2. 配置JAVA_HOME环境变量,JAVA_HOME=E:\Java\jdk1.6
服务端:
1. 进入jdk的bin目录
2. 在jdk生成keystore
执行:
keytool -genkey -alias gzirms_tomcat -keystore gzirms_keystore -storepass changeit -validity 365 -keyalg RSA -keysize 576 -v
生成keystore,别名为gzirms_tomcat,keystore的名称gzirms_keystore,初始密码changeit,有效期365天,密匙算法RSA,密钥长度 576
执行后,输入相关信息
gz.restar.net为服务器名称,后续配置访问路径时需要根据服务器名称配置,如果不想用主机名,可以通过配置hosts解决
3. 生成Server的cert证书
keytool -export -file gzirms_keystore.cert -alias gzirms_tomcat -keystore gzirms_keystore
从名为gzirms_keystore的keystore中导出文件名为gzirms_keystore.cert的证书(要求输入密码,为上面定义的初始密码changeit)
4. 导入证书到tomcat中
keytool -import -keystore ../jre/lib/security/cacerts -file gzirms_keystore.cert -alias gzirms_tomcat
5. 配置tomcat的https协议
在tomcat的conf跟目录下的server.xml,查找“Define a SSL HTTP/1.1 Connector on port 8443”,找到后修改部分配置文件(绿色部分):
<!-- Define a SSL HTTP/1.1 Connector on port 8443
This connector uses the JSSE configuration, when using APR, the
connector should be using the OpenSSL style configuration
described in the APR documentation -->
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="E:\Java\jdk1.6\bin\gzirms_keystore"
keystorePass="changeit" />
6. 单点登录门户配置
修改web.xml文件,增加单点登录filter
<!-- 单点登录服务端配置 -->
<listener>
<listener-class>org.jasig.cas.client.session.SingleSignOutHttpSessionListener</listener-class>
</listener>
<!-- 用于单点登出 -->
<filter>
<filter-name>CAS Single Sign Out Filter</filter-name>
<filter-class>org.jasig.cas.client.session.SingleSignOutFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CAS Single Sign Out Filter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 门户作为客户端应用配置验证 -->
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>com.boco.cas.filter.CasUrlFilter</filter-class>
<!--下面两个为验证地址,即cas server的地址,如果使用https验证,地址为https://hostname:8443字样-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>http://LeeZw-PC:8080/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://LeeZw-PC:8443/cas/proxyValidate</param-value>
</init-param>
<!-- 本工程的URL,被拦截的地址-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>LeeZw-PC:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
7. cas web应用配置
1) 复制cas.war到tomcat/wabapps下
2) 修改cas\WEB-INF\deployerConfigContext.xml
a. 在beans下增加datasource配置
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<value>jdbc:oracle:thin:@127.0.0.1:1521:ORCL</value>
</property>
<property name="username">
<value>gz_portal</value>
</property>
<property name="password">
<value>gz_portal</value>
</property>
</bean>
b. 在beans下增加密码加密策略配置
<bean id="passwordEncoder" class="org.jasig.cas.authentication.handler.DefaultPasswordEncoder" autowire="byName">
<constructor-arg value="MD5"/>
</bean>
c. 修改authenticationHandlers配置
屏蔽<bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
增加
<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property name="dataSource" ref="dataSource"/>
<property name="sql" value="SELECT PASSWORD FROM (SELECT OPERATOR_ID, PASSWORD FROM T_SYS_P_OPERATOR WHERE OPERATOR_ID != 'doraemon' UNION ALL SELECT 'doraemon' AS OPERATOR_ID, 'f9144ac3ae6679ea38bcc0e21e964453' AS PASSWORD FROM DUAL) WHERE OPERATOR_ID = ?"/>
<property name="passwordEncoder" ref="passwordEncoder"/>
</bean>
3)复制需要的jar包到cas\WEB-INF\lib
a. cas-server-support-jdbc-3.4.10.jar
b. commons-dbcp.jar
c. commons-pool.jar
d. ojdbc14.jar
客户端:
修改web.xml,增加单点登录filter
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<!--下面两个为验证地址,即cas server的地址,如果使用https验证,地址为https://hostname:8443字样-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl</param-name>
<param-value>http://LeeZw-PC:8080/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://LeeZw-PC:8443/cas/proxyValidate</param-value>
</init-param>
<!-- 本工程的URL,被拦截的地址-->
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>LeeZw-PC:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
分享到:
相关推荐
在这个场景中,我们将探讨如何使用CAS配置来实现单点登录。 首先,我们需要理解CAS服务器的角色。CAS服务器作为认证中心,负责验证用户的身份。当用户尝试访问受保护的资源时,他们会被重定向到CAS服务器进行登录。...
CAS(Central Authentication Service)是基于Java的开源身份验证框架,用于实现单一登录(Single Sign...通过本文的介绍,你应该对CAS配置有了全面的认识,接下来就是实践操作,让CAS在你的项目中发挥安全保障的作用。
spring security 结合cas 单点登录系统 cas客户端的配置文件
在提供的压缩包中,包含了"我的CAS配置测试流程"文档,详细记录了配置和测试的每一步,包括可能遇到的问题和解决方案。这个文档对于初学者来说是一份宝贵的参考资料,避免了在网上搜索和尝试过程中可能遇到的困扰。 ...
### CAS配置详解 #### 一、概述 CAS (Central Authentication Service) 是一种单点登录 (Single Sign-On, SSO) 的实现方式,主要用于简化多应用系统间的用户认证过程。本篇将详细介绍如何在Java环境下配置CAS,...
SSO(Single Sign-On)系统是一种身份验证机制,允许...总之,CAS配置涉及服务器端的SSL证书配置、CAS服务部署,以及客户端的过滤器配置,确保了SSO系统的安全性和便捷性。正确配置这些步骤是实现CAS SSO系统的关键。
cas 配置client 1.0 &2.0 及proxy DEMO 说明 1 cas server 搭建 1.1 资源准备 cas server 下载 http://www.ja-sig.org/downloads/cas/cas-server-3.3.1-release.zip 1.2 解压后打开cas-server-3.3.1-release\cas-...
### 统一身份认证——CAS配置实现 #### 一、背景描述 随着信息化技术的快速发展,政府、企业和各种机构在互联网或内部网(Intranet)上部署了大量的业务系统,例如在线申报系统、在线审批系统、办公自动化(OA)系统等...
### CAS配置手册知识点详解 #### 一、概述 CAS(Central Authentication Service)是一种单点登录协议,被广泛应用于教育机构及企业内部应用系统的统一身份认证。本文将基于《CAS配置手册[归纳].pdf》文件提供的...
### WebSphere 服务器 CAS 配置详解 #### 一、WebSphere 安装与初步配置 ##### 1.1 WebSphere 安装 - **文件准备**:首先获取 WebSphere 的安装包 `was.cd.6100.trial.base.windows.ia32.zip`。 - **本地解压与...
以下是关于CAS配置的一些关键知识点: **服务器端配置:** 1. **证书配置**:在配置SSO系统时,首先需要处理的是服务器的证书配置,这涉及到HTTPS协议的安全连接。证书用于验证服务器的身份,确保数据传输的安全性...
### SSO单点登录CAS配置手册精要解析 #### 一、CAS简介及应用场景 CAS (Central Authentication Service) 是一种开放源代码的单点登录协议和服务实现,它为Web应用程序提供了一种统一的身份验证方法。CAS的设计...
在本文中,我们将深入探讨CAS配置的相关知识点,以便于理解和实施SSO解决方案。 **1. CAS架构** CAS的核心架构包括三个主要部分:客户端、CAS服务器和验证服务。客户端是用户首先访问的应用,它会重定向用户到CAS...
Spring Boot 整合 CAS 配置详解 Spring Boot 是一个基于 Java 的框架,提供了许多便捷的功能来快速开发 Web 应用程序。CAS(Central Authentication Service)是一种流行的身份验证协议,用于实现单点登录和单点...
【CAS配置详解】 CAS,全称为Central Authentication Service,是由Yale大学发起的开源项目,旨在为Web应用系统提供可靠的单点登录(Single Sign-On,SSO)解决方案。自2004年12月,CAS正式成为JA-SIG(Java in ...
本案例中,我们将探讨如何将Liferay 5.2.3与CAS(Central Authentication Service)配置为SSO系统。 Liferay是一款开源的企业级门户平台,它提供了一个灵活的框架来构建和管理Web应用程序。而CAS则是一个开源的身份...
在IBM WebSphere Application Server(WAS)环境中配置与Central Authentication Service(CAS)实现单点登录(SSO)是一个涉及多个组件和步骤的过程。首先需要了解的是,WAS是一个广泛应用于IBM Tivoli软件产品中的...