一.环境
a) Windows 2003 sp1
b) JDK<!----><st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">1.5.0</st1:chsdate>_11
c) Tomcat <st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">5.5.23</st1:chsdate>
d) MySql5.0
二.准备
a) cas-server-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.zip 下载地址:http://www.ja-sig.org/products/cas/index.html
b) cas-client-java-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">2.1.1</st1:chsdate>.zip 下载地址:同上
c) 安装完jdk和jre后,需要配置JAVA_HOME和PATH=%JAVA_HOME%\bin
三.步骤
a) 配置Tomcat使用SSL安全认证
i. 使用命令提示符进入到Tomcat安装目录
ii. 生成服务端密匙,执行以下命令
keytool -genkey -alias 别名keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
例:keytool -genkey -alias casserver -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore
运行后出现提示信息:
输入keystore密码:changeit 这里也填入主机名
您的名字与姓氏是什么?
[Unknown]: localhost 这里一定要填写正确的主机名
您的组织单位名称是什么?
[Unknown]: oksonic
您的组织名称是什么?
[Unknown]: oksonic
您所在的城市或区域名称是什么?
[Unknown]: <st1:place w:st="on"><st1:city w:st="on">kunming</st1:city></st1:place>
您所在的州或省份名称是什么?
[Unknown]: <st1:place w:st="on"><st1:state w:st="on">yunnan</st1:state></st1:place>
该单位的两字母国家代码是什么
[Unknown]: cn
CN=localhost, OU=oksonic, O=oksonic, L=kunming, ST=yunnan, C=cn 正确吗?
[否]: y
完成后会在Tomcat目录生成一个名为casserver的文件
iii. 生成服务端证书,执行以下命令
keytool -export -alias casserver -storepass changeit -file server.cer -keystore server.keystore
命令执行后生成一个server.cer的证书文件
iv. 生成客户端密匙,执行以下命令
keytool -genkey -alias casclient -keyalg RSA -keypass changeit -storepass changeit -keystore client.keystore
v. 生成客户端证书,执行以下命令
keytool -export -alias casclient -storepass changeit -file client.cer -keystore client.keystore
命令执行后生成一个server.cer的证书文件
vi. 导入证书文件到cacerts 文件中,执行以下命令
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
keytool -import -trustcacerts -alias client -file client.cer -keystore cacerts -storepass changeit
把cacerts文件,拷贝到<JAVA_HOME>\jre\lib\security目录下
vii. 拷贝cas-server-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.zip包内的target目录下的cas.war文件到Tomcat目录下的webapps目录下
viii. 修改Tomcat的配置文件server.xml把以下补注释的内容打开
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
加入红字部份后的内容如下:
<Connector port="8443" maxHttpHeaderSize="8192"
keystorePass="changeit" keystoreFile="/server.keystore"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
b) 配置客户端应用
i. 使用Tomcat的例子jsp-examples来做客户端
ii. 打开项目中的web.xml文件,加入以下配置信息
<filter>
<filter-name>CASFilter</filter-name>
<filter-class>
edu.yale.its.tp.cas.client.filter.CASFilter
</filter-class>
<init-param>
<param-name>
edu.yale.its.tp.cas.client.filter.loginUrl
</param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>
edu.yale.its.tp.cas.client.filter.validateUrl
</param-name>
<param-value>
https://localhost:8443/cas/proxyValidate
</param-value>
</init-param>
<init-param>
<param-name>
edu.yale.its.tp.cas.client.filter.serverName
</param-name>
<param-value>localhost:8080</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilter</filter-name>
<url-pattern>/ *</url-pattern>
</filter-mapping>
拷贝cas-client-java-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">2.1.1</st1:chsdate>.zip包中的casclient.jar到项目的lib目录下
现在可以启动Tomcat来测试一下是否能够进入到登录页
c) 配置CAS使用数据库进行验证
i. 在MySql中的Test库中新建app_user表
CREATE TABLE `app_user` (
`username` varchar(30) NOT NULL default '',
`password` varchar(45) NOT NULL default '',
PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
添加以下用户:
INSERT INTO `app_user` (`username`,`password`) VALUES
('oksonic','oksonic'),
('oksonic1','oksonic1');
ii. 修改cas项目中的deployerConfigContext.xml文件
<bean class="org.jasig.cas.authentication.handler.support.SimpleTestUsernamePasswordAuthenticationHandler" />
注释掉该行,在其下加入:
<bean class="org.jasig.cas.adaptors.jdbc.QueryDatabaseAuthenticationHandler">
<property name="sql" value="select password from app_user where username=?" />
<property name="dataSource" ref="dataSource" />
</bean>
并添加一个bean:
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" destroy-method="close">
<property name="driverClassName"><value>com.mysql.jdbc.Driver</value></property>
<property name="url"><value>jdbc:mysql://localhost:3306/test</value></property>
<property name="username"><value>test</value></property>
<filter>
<filter-name>CASFilterfilter</filter-name>
<filter-class>edu.yale.its.tp.cas.client.filter.CASFilter</filter-class>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.loginUrl </param-name>
<param-value>https://localhost:8443/cas/login</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.validateUrl</param-name>
<param-value>https://localhost:8443/cas/proxyValidate</param-value>
</init-param>
<init-param>
<param-name>edu.yale.its.tp.cas.client.filter.serverName</param-name>
<param-value>localhost:8443</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CASFilterfilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<property name="password"><value>test</value></property>
</bean>
拷贝cas-server-jdbc-<st1:chsdate isrocdate="False" month="12" w:st="on" islunardate="False" day="30" year="1899">3.0.6</st1:chsdate>.jar和mysql-connector-java-3.1.11-bin.jar到webapps/cas/WEB-INF/lib下。
分享到:
相关推荐
3.CAS-连接池配置 4.CAS-自定义错误信息 5.CAS-识别json文件 6.CAS-页面缓存记住我 7.CAS-cookie设置 8.CAS-tgc设置 9.CAS-登出 10.CAS-redisCluster集群存储ticket(相应redis必须配置成cluster集群) 11.CAS-加密...
cas6.3版本 tomcat环境准备好,mysql设置成application.properties中提示,thekeystore自己生成放入tomcat并需要在jdk中导入证书
[置顶] SSO单点登录系列3:cas-server端配置认证方式实践(数据源+自定义java类认证) http://blog.csdn.net/ae6623/article/details/8851801 [置顶] SSO单点登录系列2:cas客户端和cas服务端交互原理动画图解,cas...
CAS Server全部配置详解
用户管理,包含新增、修改、搜索用户,启用、禁用用户,设置、取消管理员。服务管理,包含新增、修改、搜索服务,启用、禁用服务。国际化,默认支持中文和英文,可自行添加语言包。登录方式插件化,默认支持邮箱 ...
3. 客户端将 TGT 传递给 CAS 服务器,以获取 ST。 4. CAS 服务器验证 TGT 并生成 ST,将其传递给客户端。 5. 客户端使用 ST 访问受保护的资源。 三、准备工作 在部署 CAS 服务器之前,需要进行一些准备工作,包括:...
3. casService: 系统应用地址 最后我们还需要在/spring-node-1/src/main/webapp/WEB-INF/web.xml 文件中配置相关的过滤器拦截全部请求 ``` xml <filter-name>shiroFilter <filter-class>org.springframework....
整个安装过程共分为十个步骤,其中包括创建虚拟机、设置处理器和内存、设置磁盘大小、开启虚拟化、启动虚拟机、安装CAS云平台管理软件、设置IP地址和网关、命名虚拟机、设置密码、确认密码、选择安装选项、开始安装...
CAS单点登录,退出后ticket失效报出异常解决办法——换jar包 把客户端的 casclient.jar 包换成我的这个。
3.cas服务器部署到tomcat中,cas的用户名密码存储在mysql数据库中。 对于用户而言只可以通过8000端口访问整个系统(投入使用之后只需要将8000改为80即可,其他地方都不用做更改) 详细内容请看下面在搭建系统过程中...
asp.net 与cas结合的实例程序 博文链接:https://lib.iteye.com/blog/166619
cas 4.2.1服务端,集成独立连接池,密码验证是明文,如若想自定义,可以设置 cas.authn.password.encoding.alg=MD5或者其他,默认SHA-256
SSO单点登录Spring-Security & CAS 使用手册
原版cas单点登录源码和wa包,原版sso,官网下载太慢,所以特地放到csdn,大家的积分都很紧张,就不设置太高的分,都下载得起
NULL 博文链接:https://yuhuiblog695685688425687986842568269.iteye.com/blog/2327111
手把手教你如何配置如下几项: 单点登录认证配置 配置为自定义数据库认证方式 获取登录用户名 单点退出 网站间建立信任关系 修改默认页面 超时设置 另附CAS实用网址
xml java系统源码 说明 这是一个使用 Maven 和 CAS 定制 CAS 的项目。 最开始以 [Best Practice ...CAS ...CAS ...cas-server-3.4.11 cas-client-core ...maven3 jdk6 spring 3.0.5.RELEASE spring security 3.0.6.
Koa CAS认证 这是设计用于Koa服务器的CAS身份验证库。 它提供了两个中间件功能来控制对路由...设置 import Cas from 'koa2-cas' const cas = new Cas ( { cas_url : 'https://my-cas-host.com/cas' , service_url :