cas+sso 服务器 客户端配置讲解_第1页
cas+sso 服务器 客户端配置讲解_第2页
cas+sso 服务器 客户端配置讲解_第3页
cas+sso 服务器 客户端配置讲解_第4页
cas+sso 服务器 客户端配置讲解_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目的:使用单点登录系统统一管理各子系统的用户登录登出,并提供一个统一的集 成页面,方便用户在各系统之间的快速切换。环境:cas-server-3.3.1,cas-client-2.0.11一:配置服务器端的数字证书,生成数字证书./keytool -genkey -alias examplecas -keypass changeit -keyalgRSA -keystore server.keystore2,导出数字证书./keytool -export -alias examplecas -keypass changeit -fileserver.crt -keystore server.k

2、eystore将数字证书导入jre的可信区./keytool -import -alias examplecas -file server.crt -keypass changeit -keystore ./jre/lib/security/cacerts其他的一些命令:查看可信证书列表(检查证书是否加入成功)./keytool -list -keystore ./jre/lib/security/cacerts常用命令:-genkey在用户主目录中创建一个默认文件.keys to re,还会产生一个mykey的别 名, mykey 中包含用户的公钥、私钥和证书-alias 产生别名-keys

3、tore指定密钥库的名称(产生的各类信息将不在.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 -

4、alias 别名 -file 文 件名.crt-file 参数指定导出到文件的文件名-delete 删除密钥库中某条目 keytool -delete -alias 别名 -keystore sage -keypasswd 修改密钥库中指定条目口令 keytool -keypasswd -alias 别名 - keypass -new -storepass . -keystore 别名-import 将已签名数字证书导入密钥库 keytool -import -alias 别名 -keystore 证书名-f ile文件名(可以加.crt后缀)生成数字证书的时候必须使用主机名或者域名作为证书名

5、称(CN),例如 (CN=, OU=example, O=example, L=beijing, ST=beijing, C=china)检查 JAVA_HOME 环境变量(echo $JAVA_H0ME),确认 tomcat 使用了那一 个jre (有时候一台机器上会有多个jre),需要将生成的证书文件导入至web服务器使用的那个jre 的信任证书列表中,可以使用 keytool -list命令检查证书是否导入成功。二:配置服务器端 tomcat 6.0 (server.xml )打开被注释掉的 https 配置区,添加 keystoreFile, keystorePass, trustst

6、oreFile 属性配置。Xml代码疸如果需要则为 cas server 配置虚拟主机Xml代码疸将 cas-server-3.3.1-releasecas-server-3.3.1modulescas-server- webapp-3.3.1.war 解压并放至 webapps/cas3 目录后,可通过 HYPERLINK :8443/cas3/login :8443/cas3/login 访问 cas server 登录页面。三:配置一个最简单的 cas server 端。1 ,新建数据表Sql代码症create table users(3.idint not null auto_incr

7、ement,4.usernamevarchar(50) not null,5.passwordvarchar(50) not null,6.primary key (id);user表中添加需要认证的用户数据。在 WebRoot/WEB-INF/spring-configuration/文件夹下新建一个 spring 的 配置文件,配置 dataSource 对象修改 WebRoot/WEB-INF/deployerConfigContext.xml 配置文件,将:Xml代码替换为Xml代码1.1.四:配置客户端服务器。 客户端的服务器同样需要导入服务器端生成的数字证书,否则在 cas ser

8、ver 回调客户端页面的时候将会抛出以下异常:Java代码_javax.servlet.ServletException: .ssl.SSLHandshakeExceptio n: sun.security.validator.ValidatorException: PKIX path building f ailed: vider.certpath.SunCertPathBuilderException:unable to find valid certification path to requested targetedu.yale.its.tp.cas.client.filter.CA

9、SFilter.getAuthenticatedUs er(CASFilter.java:254)edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter .java:184)提示找不到有效的证书路径。配置步骤:1,拷贝服务器端生成的 server.crt 文件至客户端 jre/bin 目录下 ,执行:C:Program FilesJavajre1.6.0_06binkeytool -import -alias examplecas -file server.crt -keypass changeit - keystore .

10、libsecuritycacerts ,查看是否添加成功C:Program FilesJavajre1.6.0_06binkeytool -list -keystore .libsecuritycacerts.5.16.17.五:修改客户端增加单点登录支持。1,修改 web.xml 文件:Xml代码 CAS Filteredu.yale.its.tp.cas.client.filter.CASFilter edu.ya l e.its.tp.cas.c l ient.fi l ter. l oginUr l HYPERLINK :8443/cas3/login%3c/param-value :

11、8443/cas3/login edu.ya l e.its.tp.cas.c l ient.fi l ter.va l idateUr l HYPERLINK :8443/cas3/serviceValidate%3c/param-value :8443/cas3/serviceValidateedu.yale.its.tp.cas.client.filter.serverName 18.18.19. CAS Filter20. /portal/portal.jsp21. 2,增加子系统的登录接口,支持集成页面(por tal.jsp)的访问请求。例如,老系统的登录页面和主页面分别是logi

12、n.jsp,main.jsp( login.jsp 负责验证用户是否合法,合法则将用户数据存入该系统的session对象当中,main.jsp负责分配用户在该系统内 的访问权限及页面的初始化),为了不影响老系统的正常访问,尽可能保证独立性可以实现两个仅供por tal.jsp调 用的类似页面(cas-login.jsp,cas-main.jsp).cas-login.jsp中可以获得cas server传递给我们的用户名称。Java代码1. String username = (String)session.getAttribute(CASFilter.CAS_FILTE R_USER);根据

13、获得的用户名称再去本地数据库查找用户信息,完成验证及角色权限 初始化的工作。六:总结一下: 1,单点登录仅仅帮助我们在各个子系统中间安全的共享了一下用户名,省去 了用户重复登陆的麻烦,统一了用户帐户的管理,至于用户在每个系统中的权限分配,还是继续交给子系统 完成吧。可以开发一个 cas server 端的集成界面(portal),方便用户在各个子系统中间的快速切换。 2,为了完善 cas server 的用户管理功能,需要在 cas 的 server,client 端 各自开放几个调用接口,保证子系统与cas server 端的账户信息同步。3,改造老系统时尽量为portal的集成开发新的访问入口(而不是去修改以前 的代码使之兼容),这样既可以从集成 portal 访问,又可以从原有的访问地址访问。 ,配置 server 端及 client 的服务器时候一定要找对 tomcat 究竟在使用那一 个 jre ,windows 上查看%JAVA_HOME%变量,linux 上 e

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论