版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAS示例环境部署及配置1、 示例说明在本示例中将使用 cas-server-3.5.仔口 cas-client-3.2.1搭建一个SSO测试环境,在同一台机器上安装3个tomcat,分别部署一个cas server两个cas client,这三个应用使用不同的域名访问(通过配置hosts文件实现多个域名)。配置完成之后,应达到如下效果:1、首先访问appl,此时需要跳转到cas登录页面,要求用户进行登录;2、输入正确的用户名和密码,登录成功之后自动跳转到app1,而且可以获取到用户的登录信息;3、在同一个浏览器中直接访问app2,此时不需要再次用户登录即可正常访问,而且可以获 取到登录用户的
2、信息;4、反复访问app1和app2,只要不关闭浏览器,就可以一直正常访问并且可以获取到用户 信息;5、在浏览器地址栏输入CAS登出的路径(),系统提示成功注销;6、此时无论访问app1还是app2,都会跳转到cas登录页面,要求用户重新登录。2、 部署文件清单应用服务器中间件T (符合Servlet2.3以上标准的J2EE容器)JDKJDK1.6CAS SERVER部署包cas-,可以从获取CAS CLIENT部署包使用CAS做单点登录的应用3、 准备部署环境本文演示过程在同一个机器上的(也可以在三台实体机器或者三个的虚拟机上),根据演示需求,我们需要准备三个不同的域名,分别对应 cas s
3、erver和两个ca谿户端应用,用 修改hosts文件的方法添加域名最简单方便(这个非常重要),在文件 c:windowssystem32driversetchosts 文件中添加三条其中:对应部署cas server的tomcat,如果这个tomcat使用https协议,则这个虚拟域名还 用于证书生成;另外两个域名对应两个不同的客户端应用。安装JDK,配置JAVA_HOME、PATH环境变量;在D盘根目录复制三个 TOMCAT文件夹,分另U命名为 tomcat-for-cas tomcat-for-client-1、 tomcat-for-client-2;这个详细过程就不再详细描述4、 C
4、AS SERVER部署及通用配置3.1 CAS SERVER 部署cas-server-xxxx.waK下载地址为,本文以 cas-server-3.5.0.ziM例,解压提取 cas-server-3.5.0/modules/cas-serverwebapp -3.5.0.wa文件,把止匕文件复制至U tomcat-for-caswebapps目录并解压到cas文件夹(如果不准备对 CAS的文件做修改,则可 以直接将 WAR文件修改为cas.wa可可)。启动tomcat (此tomcat的默认监听端口为809。,在浏览器地址栏输入:ht,按回车键 后地址栏会自动变为,并显示如下界面:在登录窗
5、口中,用户名和密码都输入admin (实际上可以输入任何值,只要用户名和密码一 致,就可以成功登录,这个是 CAS的默认验证规则),然后点击登录,会出现如下界面:至此,CAS SERVER的应用已经部署成功,接下来就是根据情况进行配置。3.2 CAS SERVER通用配置1 .配置CAS SERVER节点名称在文件 $CAS/WEB-INF/perties 中 的值,比如修改为 cas012 . 去除登录页面的“ Non-secure Connection提示如果部署CAS SERVER的TOMCAT没有启用HTTPS或者没有通过HTTPS端口访问, 则会出现如
6、下提示,想要去掉这个提示,只能修改登录页面。CAS客户端的部署及配置4.1 客户端应用的部署按照常规方式部署使用CAS作为单点登录服务器的应用,并测试此应用是否能正常访 问,我们使用的是一个测试应用,只有一个jsp页面,将这个应用放到准备好的 tomcat-for-client-2/webapps下面即可,访问应用的跟目录,如果显示正常的页面即表示应用 部署成功,我的测试应用显示如下信息:4.2 复制CAS CLIENT需要的JAR文件复制CAS核心文件和其所依赖的JAR,不同版本的CAS需要的JAR文件可能稍微有所 不同,本例使用的是cas-client-core-3.2.,1需要的JAR文
7、件如下所示:4.3 配置web.xml文件有关cas-client的web.xml修改的详细说明见官网介绍:我们这里只介绍将会用到的最简单的配置,将如下内容复制到web.xml中,需要注意的是SingleSignOutFilter的映射一定要写在其他过滤器的最前面,至少是过滤器CAS Authentication Filter的前面,然后根据实际情况修改参数即可,如下所示突出显示的部分: </listener><filter><filter-name>CAS Authentication Filter</filter-name><init-
8、param><param-name>casServerLoginUrl</param-name><param-value></param-value></init-param><init-param><param-name>serverName</param-name><param-value></param-value></init-param></filter><filter><filter-name>CAS Vali
9、dation Filter</filter-name><init-param><param-name>casServerUrlPrefix</param-name><param-value></param-value></init-param><init-param><param-name>serverName</param-name><param-value></param-value></init-param><init-para
10、m><param-name>useSession</param-name><param-value>true</param-value></init-param><init-param><param-name>redirectAfterValidation</param-name><param-value>false</param-value></init-param></filter><filter><filter-name&
11、gt;HttpServletRequestWrapperFilter</filter-name><filter-name>SingleSignOutFilter</filter-name></filter><filter-mapping><filter-name>SingleSignOutFilter</filter-name><url-pattern>/jsp/*</url-pattern></filter-mapping><filter-mapping><
12、;filter-name>CAS Authentication Filter</filter-name><url-pattern>/jsp/* </url-pattern></filter-mapping><filter-mapping><filter-name>CAS Validation Filter</filter-name><url-pattern>/jsp/* </url-pattern></filter-mapping><filter-mapping&
13、gt;<filter-name>HttpServletRequestWrapperFilter</filter-name><url-pattern>/jsp/* </url-pattern></filter-mapping>4.4 部署结果测试配置完成后,启动CAS SERVER所在的tomcat和CAS客户端所在的tomcat,然后打开 浏览器输入网址,此时浏览器会自动进行跳转到CAS的登录页面,地址栏会显示如下的地址:,同时会看到如下所示的登录界面:在登录窗口中,用户名和密码都输入admin,然后点击登录,系统会自动跳转到登录之前
14、我 们要访问的地址,出现如下界面:至此,一个简单的CAS测试环境就搭建成功了。六、 为 CAS SERVER配置 HTTPS5.1 获取安全证书通常可以从一些安全机构申请安全证书,但是要支付一定的费用,在本试验中,我们 使用JDK自带的工具keytool生成一个证书,生成证书的命令为:keytool -genkey -aliasas-keyalg RSA -keysize 1024 -validity 730 -keystore d:/temp/cas.keystore在上面的命令行中,突出显示的部分为需要修改的部分,其他参数可以默认,也可以 参照keytool的参数说明进行修改;其中参数al
15、ias指定了证书的别名,以后对证书的操作会 用到此名称,我们这里设置为cas, keystore指定了证书存在磁盘上的文件路径,即我们需要将生成的证书存放在哪里。创建证书的过程如下所示,需要注意的是途中画红方框的地方,这个值需要与访问cas时的域名或者cas所在的计算机名保持一致;最后一个密码和keystore的密码保持一致即可, 密码是casserver5.2 配置 CAS SERVER使用的 TOMCAT默认情况下,tomcat是没有开启https端口的,因此需要在 TOMCAT/conf/server.xml 中进行手动配置。首先找到如下代码的位置:在配置文件中添加红框中所示的代码,其中
16、keystoreFile为我们生成的证书文件的存放路径, keystorePas的生成证书时输入的密码,本实验中我把证书文件复制到了 server.xml的目录下。5.3 通过HTTPS访问CAS应用在浏览器中输入,出现如下所示的界面: 点击”继续浏览此网站”即可跳转到我们熟悉的登录界面,此时你会发现,那个令人讨厌的 “Non-secure Connection 提示也没有了:在登录窗口中,用户名和密码都输入admin (实际上可以输入任何值,只要用户名和密码致,就可以成功登录,这个是 CAS的默认验证规则),然后点击登录,会出现如下界面5.4 修改CAS客户端的配置将CAS客户端的web.x
17、ml中需要配置CAS SERVER URL的地方做对应的修改,本例中,应将过滤器 CAS Authentication Filter的参数 casServerLoginUrl 的值由 “/login ”修改为 “/login ” ;将过滤器CAS Validation Filter的参数casServerUrlPre巾X勺值由""修改为;修改完配置文件之后,重新启动 tomcat,访问地址,浏览器依然会自动跳转到登录页面,但是当输入完用户名和密码,点击登录之后,就会出现如下的错误页面:上图对应的错误信息如下:出现这个错误的直接原因就是因为 JVM没有找到访问时所需要的安全证
18、书, 现在出现这个错误是正常的,因为我们还没有将安全证书导入到JVM的证书库中,如果在以后的使用过程中出现这个错误,可以通过 keytool的list命令查看JVM的证书库中是否有对应的证书。5.5 为运行CAS CLIENT的JVM设置安全证书CAS客户端在验证时,会从后台通过代码访问 CAS SERVER,此时是通过HTTPS进行 访问的,因此运行CAS客户端的JVM会在JVM的证书库中查找与访问的域名对应的证书, 然后使用此证书与CAS SERVER建立会话。因此我们要告诉JVM到哪里获取安全证书。有 两种方法可以达到这个目的,一个方法是在启动TOMCAT的时候为JVM指定证书的位置和访
19、问密码,另一个方法是将安全证书导入到JVM的默认证书库中。1、为JVM指定可信证书库的位置在启动TOMCAT的启动参数中增加如下内容,也可以在启动TOMCAT之前将环境变量JAVA_OPTS设置为如下的值(需要注意的是下面两行的内容不要换行):有两种方式指定 JVM的启动参数,一种在tomcat/bin/catalina.bat中指定:一种是单独建一个文件,比如 start-with-key.bat然后在文件中加入下面的内容:修改完启动脚本之后,重新启动tomcat,访问地址,浏览器依然会自动跳转到登录页面,输入完用户名和密码,点击登录之后,就会自动跳转到我们需要访问的地址,并显示正常 的页面。2、将安全证书导入到JVM默认的证书库中如果在启动JVM的时候没有指定安全证书的位置,当程序用到安全证书时, JVM将使 用JRE默认的证书库,位置为JAVA_HOME%jrelibsecuhtycacerts 。因此我们需要做的 就是将CAS SERVER使用的安全证书导入到JRE的这个证书库中。首先使用keytool的export命令将keystore中的证书信息导出为cer格式的文件,命令格 式为:keytool -export -alias cas -keystore cas.keystore -
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025 高中信息技术数据与计算之数据在电商营销效果预测模型构建中的应用课件
- 2025 高中信息技术数据与计算之数据可视化的克利夫兰点图设计课件
- 2026年智慧海洋智慧渔业智慧渔港解决方案应用
- 2024年广州互联网法院首例跨境传输个人信息司法裁判要旨
- 2026年数据治理中的数据安全防护:终端 网络 数据库三层保护设计
- 2026年数据投毒攻击防御:训练数据后门检测与防范机制
- 2026年生物育种品种全程机械化栽培技术规程
- 医患沟通中的非语言表达课件
- 2026年载人潜水器水下布放回收中的通信保障方案
- 2026年省域美丽中国先行区建设一省一色方案模板
- 地震勘探资料解释技术
- 牧原饲料厂安全培训课件
- 2025年校园节能改造项目可行性研究报告及总结分析
- 肾病患者的饮食指导课件
- 运动品牌361°小刘鸭联名新品发布快闪店活动方案
- 2025秋南方新课堂金牌学案中国历史七年级上册(配人教版)(教师用书)
- 劳动关系协调员四级考试真题(2篇)
- 2025年ODCC开放数据中心大会:云边协同AI网络技术白皮书
- 2025年中国纳米功能电池项目创业计划书
- 雅马哈DTX430K电子鼓中文说明书
- 小学五年级音乐期末考核方案
评论
0/150
提交评论