cas单点登录 生成证书

Posted 剑神西门吹雪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cas单点登录 生成证书相关的知识,希望对你有一定的参考价值。

生成 证书

实现:使用jdk自带的keytool 工具生成证书。

命令:    keytool -genkey -alias tomcat -keyalg RSA -keystore c:/devsoft/keys/keystore

导出证书:keytool -genkey -alias tomcat -keyalg RSA -keystore c:/devsoft/keys/keystore

将证书导入jdk信任库: keytool -import -trustcacerts -alias tomcat -file c:/devsoft/keys/tomcat.cer -keystore "C:/Program Files/Java/jre1.8.0_141/lib/security"

4.服务端Tomcat配置

在制作完成密钥文件、证书文件、密钥库文件后即可进行服务端Tomcat的配置。打开$CATALINA_HOME/conf/server.xml

<!--keystoreFile 生成的安全证书的位置--> 

<!--keystorePass设置安全证书的密码-->

<Connector protocol="HTTP/1.1" SSLEnabled="true"

         maxThreads="150" scheme="https" secure="true"

         clientAuth="false"

         sslProtocol="TLS"

         keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore"  

         keystorePass="cas123"   

         port="443"   />

说明:

port一般为8443或443,最常用的是443端口(https默认端口),

这样https方式访问的时候可以不加端口号(如:https://sso.demo.com/cas/login);

keystoreFile为tomcat目录下的密钥文件;

keystorePass为私钥密码;truststoreFile为生成的信任文件,

如果此处不指定则默认为$JAVA_HOME/jre/lib/security/cacerts文件;其它属性默认即可。

5.生成客户端密钥库文件

单向认证的客户端配置只需生成客户端信任文件caserts即可。

首先将服务端生成的证书文件(之前生成的casserver.cer文件)复制到$JAVA_HOME/jre/lib/security下,

然后打开CMD窗口切换到$JAVA_HOME/jre/lib/security下并执行命令:

keytool -import -trustcacerts -alias casclient -storepass changeit -file casserver.cer -keystore cacerts

命令执行成功后JDK目录/jre/lib/security下多出cacerts文件。

6.客户端应用配置

TOMCAT修改
tomcat\conf\ server.xml 修改片断
<!--keystoreFile 生成的安全证书的位置--> 
<!--keystorePass设置安全证书的密码-->
<Connector protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false"
sslProtocol="TLS"   
keystoreFile="D:\server\tomcat-7.0.55\casserver.keystore"  
keystorePass="cas123"   
port="443"/>

7.常见配置错误

1)keytool 生成安全证书不能使用IP地址 一律使用域名
2)务必确认客户端程序使用JDK 路径正确 分清楚JDK、JRE

 

以上是关于cas单点登录 生成证书的主要内容,如果未能解决你的问题,请参考以下文章

CAS单点登录的配置

Shiro单点登录之集成CAS

Shiro单点登录之集成CAS

CAS SSO 单点登录实例

SSO之CAS单点登录实例演示

[精华][推荐]CAS SSO单点登录服务端客户端实例