CAS服务器配置文档格式.docx
- 文档编号:21655704
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:10
- 大小:416.09KB
CAS服务器配置文档格式.docx
《CAS服务器配置文档格式.docx》由会员分享,可在线阅读,更多相关《CAS服务器配置文档格式.docx(10页珍藏版)》请在冰豆网上搜索。
导出数字证书
keytool-export-aliastomcat-keypasschangeit-fileserver.crt-keystoreserver.keystore
输入keystore密码:
changeit
输入上一步中的密码,结果在当前目录生成server.crt密钥文件。
(注意:
这个文件是要导入客户端的JVM上的)
4.将数字认证导入jre可信任区
keytool-import-aliastomcat-fileserver.crt-keypasschangeit-keystore
D:
/Java/jdk1.6.0_33/jre/lib/security/cacerts
这里的jre地址和tomcat使用的jre必须一致
输入密码(注意:
这里的密码不是上面设定的密码,而是changeit),将创建cacerts文件。
5.
查看可信证书列表(检查证书是否加入成功)
keytool-list-keystoreD:
\Java\jdk1.6.0_33/jre/lib/security/cacerts
6.命令解释(转)
-genkey
在用户主目录中创建一个默认文件"
.keystore"
还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias
产生别名
-keystore
指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg
指定密钥的算法
-validity
指定创建的证书有效期多少天
-keysize
指定密钥长度
-storepass
指定密钥库的密码
-keypass
指定别名条目的密码
-dname
指定证书拥有者信息例如:
"
CN=firstName,OU=org,O=bj,L=bj,ST=gd,C=cn"
-list
显示密钥库中的证书信息
keytool-list-v-keystore
别名
-storepass....
-v
显示密钥库中的证书详细信息
-export
将别名指定的证书导出到文件
keytool-export-alias
-file
文件名.crt
参数指定导出到文件的文件名
-delete
删除密钥库中某条目
keytool-delete-alias
-keystoresage
-keypasswd
修改密钥库中指定条目口令
keytool-keypasswd-alias
-keypass....-new....-storepass...-keystore
别名
-import
将已签名数字证书导入密钥库
keytool-import-alias
证书名-file
文件名(可以加.crt
后缀)
以上是服务器端导入证书,放在tomcat用的jre下的证书库中
三、配置Tomcat的HTTPS服务
在tomcat的server.xml中添加配置信息
<
Connectorprotocol="
org.apache.coyote.http11.Http11Protocol"
port="
8443"
minSpareThreads="
5"
maxSpareThreads="
75"
enableLookups="
true"
disableUploadTimeout="
acceptCount="
100"
maxThreads="
200"
scheme="
https"
secure="
SSLEnabled="
keystoreFile="
/Users/shipengzhi/server.keystore"
keystorePass="
changeit"
truststoreFile="
/Java/jdk1.6.0_33/jre/lib/security/cacerts"
clientAuth="
false"
sslProtocol="
TLS"
/>
keystorePass="
参数,即为上面几步中涉及到的密码,keystoreFile="
.keystorePath"
.keystorePath即为在第一步中生成的文件.keystore的全路径,如:
/Users/shipengzhi/server.keystore。
绑定hosts
10.1.164.118
启动Tomcat,访问https:
8443/,出现以下界面说明HTTPS配置生效:
四、构建CAS服务器和过滤器
1.部署JA-SIG(CAS)服务器
cas官方网站
http:
//www.jasig.org/cas
下载最新的服务端
CASServer3.5.0Final
解压后将modules下面的cas-server-webapp-3.3.3.war改名为cas.war部署到web服务器,作为单点登录的服务器。
启动Tomcat,访问网址http:
8080/cas/index.jsp或https:
8443,出现以下画面:
输入用户名/密码:
linly/linly(任意两个相同的字窜),点击“登录”,出现以下画面:
表示CAS服务器配置运行成功。
2.为HelloWorldExample程序配置CAS过滤器
访问http:
//shipengzhi:
8080/examples/servlets/servlet/HelloWorldExample,出现以下界面说明应用正常启动:
编辑D:
\Java\apache-tomcat-6.0.14\webapps\examples\WEB-INF下的web.xml文件,添加如下信息:
!
--========================单点登录开始========================-->
--用于单点退出,该过滤器用于实现单点登出功能,可选配置-->
listener>
<
listener-class>
org.jasig.cas.client.session.SingleSignOutHttpSessionListener<
/listener-class>
/listener>
--该过滤器用于实现单点登出功能,可选配置。
-->
filter>
filter-name>
CASSingleSignOutFilter<
/filter-name>
filter-class>
org.jasig.cas.client.session.SingleSignOutFilter<
/filter-class>
/filter>
filter-mapping>
url-pattern>
/*<
/url-pattern>
/filter-mapping>
--该过滤器负责用户的认证工作,必须启用它-->
CASFilter<
org.jasig.cas.client.authentication.AuthenticationFilter<
init-param>
<
param-name>
casServerLoginUrl<
/param-name>
param-value>
:
8443/cas/login<
/param-value>
--这里的server是服务端的IP-->
/init-param>
serverName<
8080<
--该过滤器负责对Ticket的校验工作,必须启用它-->
CASValidationFilter<
org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter<
casServerUrlPrefix<
8443/cas<
--========================单点登录结束========================-->
拷贝cas-client-core-3.2.1.jar,commons-logging-1.1.jar文件到目录D:
\Java\apache-tomcat-6.0.14\webapps\examples\WEB-INF\lib下。
启动Tomcat。
测试使用浏览器登陆以下网址:
8080/examples/servlets/servlet/HelloWorldExample,页面将弹出以下认证框,点击“确定”
页面将重定向到JA-SIG的SSO登录认证页面
输入用户名=密码,如:
linly/linly,则通过验证,进入应用的入口界面,如下:
细心的用户将发现,此时的URL不再是:
8080/examples/servlets/servlet/HelloWorldExample,
URL的尾端带上了一个ticket参数:
//linly:
8080/examples/servlets/servlet/HelloWorldExample?
ticket=ST-2-qTcfDrdFb0bWndWgaqZD
到此,JA-SIG(CAS)服务器的初步SSO部署宣告成功。
异常Q&
A
1.验证ticket时,抛出异常
avax.servlet.ServletException:
.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:
PKIXpathbuildingfailed:
sun.security.provider.certpath.SunCertPathBuilderException:
unabletofindvalidcertificationpathtorequestedtarget
解决办法:
tomact使用的jvm的jre必须和数字认证导入jre可信任区时的jre一样,抛出这个异常就是因为不一样导致的。
2.如何将CAS和应用分布部署在不同的机器?
机器A:
部署CAS服务
机器B:
部署OA应用
机器C:
用户浏览器端
1.由机器A上生成.keystore的证书文件,证书颁发者是机器A的完全域名
2.机器A上用于部署CAS的Tomcat的server.xml文件中定义HTTPS的配置,指向.keystore文件证书
3.从.keystore中导出的凭证文件要copy到机器B上,并导入机器B的JRE环境的证书库中
4.机器B上部署OA的Tomcat必须指定运行在导入凭证JRE环境上,而不是JDK,这点常有人搞错。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- CAS 服务器 配置
![提示](https://static.bdocx.com/images/bang_tan.gif)