配置Tomcat使用SSL安全认证
因为
CAS使用的是https协议,所以要求Tomcat支持该协议。实现步骤如下:
第一步:进入Dos命令行窗口,并进入到<%CATALINA_HOME%>目录下
第二步:生成密匙,命令如下:
- keytool-genkey-alias别名-keyalgRSA-keypasschangeit-storepasschangeit-<SPANclass=hilite3>keystore</SPAN><SPANclass=hilite2>server</SPAN>.<SPANclass=hilite3>keystore</SPAN>
-
例:keytool-genkey-alias<SPANclass=hilite1>cas</SPAN><SPANclass=hilite2>server</SPAN>-keyalgRSA-keypasschangeit-storepasschangeit-<SPANclass=hilite3>keystore</SPAN><SPANclass=hilite2>server</SPAN>.<SPANclass=hilite3>keystore</SPAN>
- 如附图所示.
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
如附图所示.
姓名必须填写为服务器端主机名,如果本机则填写localhost
完成之后会在Tomcat根目录下生成一个
server.
keystore的文件。
第三步:生成证书
- keytool-export-alias<SPANclass=hilite1>cas</SPAN><SPANclass=hilite2>server</SPAN>-storepasschangeit-file<SPANclass=hilite2>server</SPAN>.cer-<SPANclass=hilite3>keystore</SPAN><SPANclass=hilite2>server</SPAN>.<SPANclass=hilite3>keystore</SPAN>
keytool -export -alias casserver -storepass changeit -file server.cer -keystore server.keystore
完成之后,会在Tomcat目录下生成一个名为
server.cer的证书
第四步:导入证书
- keytool-import-trustcacerts-alias<SPANclass=hilite2>server</SPAN>-file<SPANclass=hilite2>server</SPAN>.cer-<SPANclass=hilite3>keystore</SPAN>cacerts-storepasschangeit
keytool -import -trustcacerts -alias server -file server.cer -keystore cacerts -storepass changeit
将生成的
cascerts文件copy到<%JAVA_HOME%>/jre/lib/security目录下
第五步:配置Tomcat
打开<%CATALINA_HOME%>/config/
server.xml
找到<Connector port="8443" ... />节点。默认该节点是被注释掉的,去掉注释,并修改内容为:
- <Connectorprotocol="org.apache.coyote.http11.Http11Protocol"
-
port="8443"maxHttpHeaderSize="8192"
-
maxThreads="150"minSpareThreads="25"maxSpareThreads="75"
-
enableLookups="false"disableUploadTimeout="true"
-
acceptCount="100"scheme="https"secure="true"
-
clientAuth="false"sslProtocol="TLS"
-
<SPANclass=hilite3>keystore</SPAN>Pass="changeit"<SPANclass=hilite3>keystore</SPAN>File="/<SPANclass=hilite2>server</SPAN>.<SPANclass=hilite3>keystore</SPAN>"/>
<Connector protocol="org.apache.coyote.http11.Http11Protocol"
port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystorePass="changeit" keystoreFile="/server.keystore" />
第六步:测试
访问:Https://localhost:8443/ 如果能出现Tomcat管理首页,则证明SSL配置成功
集成
CAS 第一步:下载
CAS Server和
CAS Client
http://www.ja-sig.org/downloads/
cas/
cas-
server-3.1.1-release.zip
http://www.ja-sig.org/downloads/
cas-clients/
cas-client-java-2.1.1.zip
第二步:部署
CAS Server 将下载的
cas-
server-3.1.1-release.zip文件解压,将/modules/
cas-
server-webapp-3.1.1.war拷贝到<%CATALINA_HOME%>/webapps/目录下,并改名为
cas.war
启动Tomcat,访问https://localhost:8443/
cas/login 弹出登录页面,则证明部署成功。
第三步:集成到本系统
将下载的
cas-client-java-2.1.1.zip文件解压,将/dist/
casclient.jar文件拷贝到本系统的WEB-INF/lib目录下
修改web.xml配置,添加以下内容:
- <filter>
-
<filter-name><SPANclass=hilite1>CAS</SPAN>Filter</filter-name>
-
<filter-class>
-
edu.yale.its.tp.<SPANclass=hilite1>cas</SPAN>.client.filter.<SPANclass=hilite1>CAS</SPAN>Filter
-
</filter-class>
- <init-param>
- <param-name>
-
edu.yale.its.tp.<SPANclass=hilite1>cas</SPAN>.client.filter.loginUrl
- </param-name>
- <param-value>
-
<Ahref="https://localhost:8443/cas/login"target=_blank>https://localhost:8443/<SPANclass=hilite1>cas</SPAN>/login</A>
- </param-value>
- </init-param>
- <init-param>
- <param-name>
-
edu.yale.its.tp.<SPANclass=hilite1>cas</SPAN>.client.filter.validateUrl
- </param-name>
- <param-value>
-
<Ahref="https://localhost:8443/cas/proxyValidate"target=_blank>https://localhost:8443/<SPANclass=hilite1>cas</SPAN>/proxyValidate</A>
- </param-value>
- </init-param>
- <init-param>
- <param-name>
-
edu.yale.its.tp.<SPANclass=hilite1>cas</SPAN>.client.filter.<SPANclass=hilite2>server</SPAN>Name
- </param-name>
-
<param-value>localhost:8080</param-value>
- </init-param>
- </filter>
- <filter-mapping>
-
<filter-name><SPANclass=hilite1>CAS</SPAN>Filter</filter-name>
- <url-pattern>/*</url-pattern>
- </filter-mapping>
<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过滤器拦截到,过滤器会将页面重定向
CAS Server,
CAS Server会判断用户是否已经登录,如果未登录,则定位到登录页面(
CAS Server内的)。登录成功后,再重定向到用户先前访问的本系统页面。此时session里有一个名为的edu.yale.its.tp.
cas.client.filter.user属性。它存储的就是用户的登录名
相关推荐
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,对于采用 CAS 实现轻量级单点登录解决方案的入门读者具有一定指导作用。
使用CAS在Tomcat中实现单点登录参考代码及配置详细文档
CAS,单点登录,tomcat配置SSL,cas资源
压缩包中有详细的cas sso 的配置过程,同时提供所需的全部JAR包!
CAS登录在配置和应用过程中: 1.注意配置文件的书写(格式或空格也要注意). 2.注意安全证书的生成,在生成过程中要注意填写的内容和对应用服务器所依赖的虚拟机的注册.
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,研究如何采用 CAS 实现轻量级单点登录解决方案。 CAS 是 Yale 大学发起的...
CAS(Central Authentication Service)是一款不错的针对 Web 应用的单点登录框架,本文介绍了 CAS 的原理、协议、在 Tomcat 中的配置和使用,对于采用 CAS 实现轻量级单点登录解决方案的入门读者具有一定指导作用。
3 CAS单点登录简介(针对实践选择的技术) 5 3.1 技术快速使用说明 5 3.1.1 设置服务器域名 5 3.1.2 生成证书(这里采用JDK自带的工具keytool) 5 3.1.3 为客户端JVM导入证书 6 3.1.4 将证书应用到Web服务器Tomcat 7...
这个文档是经过我将近两个星期的研究,证实了其中文档的真实性和可用性,只要你跟着文档里面的步骤配置和实施,绝对实现cas单点登录(sso),包括跨域访问cas
基于CAS4.0.0版本的单点登录,自带tomcat8,已配置SSL,只需要在本地创建一个cas.keystore证书放在D盘下就可以运行了。证书名称跟密码可自行修改或参照本tomcat。登录页面的logo与背景图已预留,替换即可
使用Tomcat配置cas单点登录Sever和Client,包括生成的证书和已配置好的Tomcat工程,博客介绍链接:https://mp.csdn.net/postedit/80043654
最近花了点时间整理了一下 CAS 的单点登录配置,希望对大家有帮助!
spring下使用shiro+cas配置单点登录,多个系统之间的访问,每次只需要登录一次 ## 系统模块说明 1. cas: 单点登录模块,这里直接拿的是cas的项目改了点样式而已 2. doc: 文档目录,里面有数据库生成语句,采用的...
CAS单点登录资料,在TOMCAT下进行配置
cas单点登录登出配置 php 和java 版本。 完美实现了登录和登出, demo cas server 3.5.2 版本 -- 扔到tomcat下直接跑。 java客户端为 3.2.1. -- 要想跑的话需要自己下载jar php 扔到php工程里面直接跑。。 记得看...
springmvc+spring+shiro+cas单点登录实例 加入了登录验证码认证,修改了下首页样式,不过样式没有弄好,很丑的,有空自己再弄下 说明:cas-server是单点登录服务端,用的是maven项目,但是WEB-INF里面的lib目录下面...
此文档自己亲手从0开始一步一步配置的详尽过程,其中包括keytool创建 、ticket、tomcat配置cas、自定义登录页面,处理服务器返回的乱码,服务退出、cas服务器返回多数据等等文档 包括SSO原理图,以及认证流程图等
本资源为cas单点登录的操作配置,其中包括相应的jar包、war包,以及tomcat(64位),配置文档中也包括我在配置过程中遇到的问题等
放到tomcat下 就可以运行,进行简单的配置,可以实现单点登录功能