ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:492.50KB ,
资源ID:23299733      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/23299733.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(CAS示例环境部署及配置完整版.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

CAS示例环境部署及配置完整版.docx

1、CAS示例环境部署及配置完整版CAS示例环境部署及配置一、示例说明在本示例中将使用cas-server-3.5.0和cas-client-3.2.1搭建一个SSO测试环境,在同一台机器上安装3个tomcat,分别部署一个cas server和两个cas client,这三个应用使用不同的域名访问(通过配置hosts文件实现多个域名)。配置完成之后,应达到如下效果:1、首先访问app1,此时需要跳转到cas登录页面,要求用户进行登录;2、输入正确的用户名和密码,登录成功之后自动跳转到app1,而且可以获取到用户的登录信息;3、在同一个浏览器中直接访问app2,此时不需要再次用户登录即可正常访问,

2、而且可以获取到登录用户的信息;4、反复访问app1和app2,只要不关闭浏览器,就可以一直正常访问并且可以获取到用户信息;5、在浏览器地址栏输入CAS登出的路径(https:/cas.demo.:8443/cas/logout),系统提示成功注销;6、此时无论访问app1还是app2,都会跳转到cas登录页面,要求用户重新登录。二、部署文件清单应用服务器中间件Tomcat6.0.23(符合Servlet2.3以上标准的J2EE容器)JDKJDK1.6CAS SERVER部署包cas-server-3.5.0.war,可以从www.jasig.org/cas获取CAS CLIENT部署包使用CA

3、S做单点登录的应用三、准备部署环境本文演示过程在同一个机器上的(也可以在三台实体机器或者三个的虚拟机上),根据演示需求,我们需要准备三个不同的域名,分别对应cas server和两个cas客户端应用,用修改hosts 文件的方法添加域名最简单方便(这个非常重要),在文件 c:windowssystem32driversetchosts 文件中添加三条127.0.0.1 cas.demo.127.0.0.1 app1.demo.127.0.0.1 app2.demo.其中:对应部署cas server的tomcat,如果这个tomcat使用https协议,则这个虚拟域名还用于证书生成;另外两个域

4、名对应两个不同的客户端应用。安装JDK,配置JAVA_HOME、PATH环境变量;在D盘根目录复制三个TOMCAT文件夹,分别命名为tomcat-for-cas、tomcat-for-client-1、tomcat-for-client-2;这个详细过程就不再详细描述。四、CAS SERVER部署及通用配置3.1CAS SERVER部署cas-server-xxxx.war的下载地址为www.jasig.org/cas/download,本文以cas-server-3.5.0.zip 为例,解压提取cas-server-3.5.0/modules/cas-serverwebapp -3.5.0

5、.war文件,把此文件复制到tomcat-for-caswebapps目录并解压到cas文件夹(如果不准备对CAS的文件做修改,则可以直接将WAR文件修改为cas.war即可)。启动tomcat(此tomcat的默认监听端口为8090),在浏览器地址栏输入:cas.demo.:8090/cas,按回车键后地址栏会自动变为cas.demo.:8090/cas/login,并显示如下界面:在登录窗口中,用户名和密码都输入admin(实际上可以输入任何值,只要用户名和密码一致,就可以成功登录,这个是CAS的默认验证规则),然后点击登录,会出现如下界面:至此,CAS SERVER的应用已经部署成功,接

6、下来就是根据情况进行配置。3.2CAS SERVER通用配置1.配置CAS SERVER节点名称在文件$CAS/WEB-INF/cas.properties中host.name的值,比如修改为cas01。2.去除登录页面的“Non-secure Connection”提示如果部署CAS SERVER的TOMCAT没有启用HTTPS或者没有通过HTTPS端口访问,则会出现如下提示,想要去掉这个提示,只能修改登录页面。五、CAS客户端的部署及配置4.1客户端应用的部署按照常规方式部署使用CAS作为单点登录服务器的应用,并测试此应用是否能正常访问,我们使用的是一个测试应用,只有一个jsp页面,将这个

7、应用放到准备好的tomcat-for-client-2/webapps下面即可,访问应用的跟目录app2.demo.:5090/c2,如果显示正常的页面即表示应用部署成功,我的测试应用显示如下信息:4.2复制CAS CLIENT需要的JAR文件复制CAS核心文件和其所依赖的JAR,不同版本的CAS需要的JAR文件可能稍微有所不同,本例使用的是cas-client-core-3.2.1,需要的JAR文件如下所示:4.3配置web.xml文件有关cas-client的web.xml修改的详细说明见官网介绍:https:/wiki.jasig.org/display/CASC/Configuring

8、+the+JA-SIG+CAS+Client+for+Java+in+the+web.xml我们这里只介绍将会用到的最简单的配置,将如下容复制到web.xml中,需要注意的是SingleSignOutFilter的映射一定要写在其他过滤器的最前面,至少是过滤器CAS Authentication Filter的前面,然后根据实际情况修改参数即可,如下所示突出显示的部分: org.jasig.cas.client.session.SingleSignOutHttpSessionListener CAS Authentication Filter org.jasig.cas.client.auth

9、entication.AuthenticationFilter casServerLoginUrl cas.demo.:8090/cas/login serverName app2.demo.:5090 CAS Validation Filter org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter casServerUrlPrefix cas.demo.:8090/cas serverName app2.demo.:5090 useSession true redirectAfterValidati

10、on false HttpServletRequestWrapperFilter org.jasig.cas.client.util.HttpServletRequestWrapperFilter SingleSignOutFilter org.jasig.cas.client.session.SingleSignOutFilter SingleSignOutFilter /jsp/* CAS Authentication Filter /jsp/* CAS Validation Filter /jsp/* HttpServletRequestWrapperFilter /jsp/* 4.4部

11、署结果测试 配置完成后,启动CAS SERVER所在的tomcat和CAS客户端所在的tomcat,然后打开浏览器输入网址app2.demo.:5090/c2,此时浏览器会自动进行跳转到CAS的登录页面,地址栏会显示如下的地址:cas.demo.:8090/cas/login?service=http%3A%2F%2Fapp2.demo.%3A5090%2Fc2%2F,同时会看到如下所示的登录界面:在登录窗口中,用户名和密码都输入admin,然后点击登录,系统会自动跳转到登录之前我们要访问的地址,出现如下界面:至此,一个简单的CAS测试环境就搭建成功了。六、为CAS SERVER配置HTTPS

12、5.1获取安全证书通常可以从一些安全机构申请安全证书,但是要支付一定的费用,在本试验中,我们使用JDK自带的工具keytool生成一个证书,生成证书的命令为:keytool -genkey -alias cas -keyalg RSA -keysize 1024 -validity 730 -keystore d:/temp/cas.keystore在上面的命令行中,突出显示的部分为需要修改的部分,其他参数可以默认,也可以参照keytool的参数说明进行修改;其中参数alias指定了证书的别名,以后对证书的操作会用到此名称,我们这里设置为cas,keystore指定了证书存在磁盘上的文件路径,

13、即我们需要将生成的证书存放在哪里。创建证书的过程如下所示,需要注意的是途中画红方框的地方,这个值需要与访问cas时的域名或者cas所在的计算机名保持一致;最后一个密码和keystore的密码保持一致即可,密码是casserver。5.2配置CAS SERVER使用的TOMCAT默认情况下,tomcat是没有开启https端口的,因此需要在TOMCAT/conf/server.xml中进行手动配置。首先找到如下代码的位置:在配置文件中添加红框中所示的代码,其中keystoreFile为我们生成的证书文件的存放路径,keystorePass为生成证书时输入的密码,本实验中我把证书文件复制到了ser

14、ver.xml的目录下。5.3通过HTTPS访问CAS应用在浏览器中输入https:/cas.demo.:8443/cas,出现如下所示的界面:点击“继续浏览此”即可跳转到我们熟悉的登录界面,此时你会发现,那个令人讨厌的“Non-secure Connection”提示也没有了:在登录窗口中,用户名和密码都输入admin(实际上可以输入任何值,只要用户名和密码一致,就可以成功登录,这个是CAS的默认验证规则),然后点击登录,会出现如下界面5.4修改CAS 客户端的配置将CAS客户端的web.xml中需要配置CAS SERVER URL的地方做对应的修改,本例中,应将过滤器CAS Authent

15、ication Filter的参数casServerLoginUrl 的值由“cas.demo.:8090/cas/login”修改为“https:/cas.demo.:8443/cas/login”;将过滤器CAS Validation Filter的参数casServerUrlPrefix的值由“cas.demo.:8090/cas”修改为“https:/cas.demo.:8443/cas”;修改完配置文件之后,重新启动tomcat,访问地址app2.demo.:5090/c2,浏览器依然会自动跳转到登录页面,但是当输入完用户名和密码,点击登录之后,就会出现如下的错误页面:上图对应的错误

16、信息如下:java.lang.RuntimeException: .ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target org.jasig.cas.client.util.CommonUtils.getResponse

17、FromServer(CommonUtils.java:341) org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:305) org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator.retrieveResponseFromServer(AbstractCasProtocolUrlBasedTicketValidator.java:50) org.jasig.cas.client.validation

18、.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:207) org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:169) org.jasig.cas.client.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:116)出现这个错误的

19、直接原因就是因为JVM没有找到访问时所需要的安全证书,现在出现这个错误是正常的,因为我们还没有将安全证书导入到JVM的证书库中,如果在以后的使用过程中出现这个错误,可以通过keytool的list命令查看JVM的证书库中是否有对应的证书。5.5为运行CAS CLIENT的JVM设置安全证书CAS客户端在验证时,会从后台通过代码访问CAS SERVER,此时是通过HTTPS进行访问的,因此运行CAS客户端的JVM会在JVM的证书库中查找与访问的域名对应的证书,然后使用此证书与CAS SERVER建立会话。因此我们要告诉JVM到哪里获取安全证书。有两种方法可以达到这个目的,一个方法是在启动TOMC

20、AT的时候为JVM指定证书的位置和访问密码,另一个方法是将安全证书导入到JVM的默认证书库中。1、为JVM指定可信证书库的位置在启动TOMCAT的启动参数中增加如下容,也可以在启动TOMCAT之前将环境变量JAVA_OPTS设置为如下的值(需要注意的是下面两行的容不要换行):-D.ssl.trustStore=D:/tomcat-for-cas/conf/cas.keystore -D.ssl.trustStorePassword=casserver有两种方式指定JVM的启动参数,一种在tomcat/bin/catalina.bat中指定:一种是单独建一个文件,比如start-with-key

21、.bat,然后在文件中加入下面的容:修改完启动脚本之后,重新启动tomcat,访问地址app2.demo.:5090/c2,浏览器依然会自动跳转到登录页面,输入完用户名和密码,点击登录之后,就会自动跳转到我们需要访问的地址,并显示正常的页面。2、将安全证书导入到JVM默认的证书库中如果在启动JVM的时候没有指定安全证书的位置,当程序用到安全证书时,JVM将使用JRE默认的证书库,位置为%JAVA_HOME%jrelibsecuritycacerts 。因此我们需要做的就是将CAS SERVER使用的安全证书导入到JRE的这个证书库中。首先使用keytool的export命令将keystore中

22、的证书信息导出为cer格式的文件,命令格式为:keytool -export -alias cas -keystore cas.keystore -file cas.cer,其中keystore指定了CAS SERVERS使用的安全证书文件的路径(我们前面生成的证书存放的路径),参数file指定要将证书信息导出到哪个文件进行存放。本例中使用的是tomcat/conf下的证书文件,同时也将导出的证书放在了这个目录下:然后使用keytool的import命令将证书cas.cer中的信息导入到JVM的证书库中,命令格式为:keytool -import -alias cas -keystore “%

23、JAVA_HOME%jrelibsecuritycacerts” -file cas.cer,其中keystore指定了JVM的安全证书文件的路径,参数file指定要将哪个证书的信息导入。JVM证书库的默认密码是changeit。如果在导入证书时,提示证书已经存在,则使用keytool的delete命令将证书删除后再导入即可,命令的语法为keytool -delete -alias cas -keystore “%JAVA_HOME%jrelibsecuritycacerts”。查看证书是否导入成功:确认证书导入成功之后,重新启动tomcat(记得去掉指定安全证书库的启动参数呦,不然是看不到效果的),访问地址app2.demo.:5090/c2,浏览器依然会自动跳转到登录页面,输入完用户名和密码,点击登录之后,就会自动跳转到我们需要访问的地址,并显示正常的页面。至此,一个简单的CAS测试环境就搭建好了,既可以通过HTTP端口访问,也可以通过HTTPS端口访问。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1