CAS-5.3单点登录/退出客户端搭建(Springboot)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CAS-5.3单点登录/退出客户端搭建(Springboot)相关的知识,希望对你有一定的参考价值。
参考技术A使用Springboot搭建cas客户端,主要是配置四个过滤器和一个监听器。
用于过滤不需要登录的用户,需要实现UrlPatternMatcherStrategy 接口,在matches 函数里添加不需要用户登录的链接。
按照同样的方法实现客户端系统2。
启动cas服务器端和两个客户端。输入 http://springbootcasclient.com:8001/ ,则跳转到登录界面
单点退出,需要下面三个步骤:1、添加过滤器类,过滤掉不需要登录的url;2、添加退出跳转的控制器;3、修改服务端application.properties ,加cas.logout.followServiceRedirects=true,让客户端可以自己制定退出的路径,否则会走默认退出路径。
过滤器类需要实现UrlPatternMatcherStrategy接口,然后配置到springboot中,请参考 单点登录 的 创建过滤器类 和 配置过滤器到springboot 。
退出的方式有两种,一种是走默认的路径,另一种是走自定义的返回路径。请参考 单点登录 的 用户退出控制器 。
将上面的内容添加到applicaiton.properties, 这样就可以允许客户端定制自己的退出路径了。
http协议配置:cas 5.3.x默认客户端不支持http协议, 如果不进行配置,则会出现“未认证授权的服务”错误。
要配置兼容http协议,需要在HTTPSandIMAPS-10000001.json文件中添加http。
cas单点登录服务端客户端搭建
jdk1.6
apache-tomcat-7
cas-server-webapp-4.0.0.war、cas-client-core-3.2.1.jar
(1)cas服务端
一、.修改hosts 文件,要使用CAS单点登录必须要配置域名, cas是不能通过ip访问的.,编辑文件 C:WindowsSystem32driversetchosts
为了简单,直接改成:127.0.0.1 localhost,这个用于cas服务端,cas客户端我直接在eclipse中启动。
二、【安全证书配置】:
1 打开cmd命令窗口
2 生成证书,在cmd窗口输入以下命令:
keytool -genkey -alias ssodemo -keyalg RSA -keysize 1024 -keypass zhoubang -validity 365 -keystore c:zhoubang.keystore -storepass zhoubang
在cmd窗口继续输入以下命令,导出证书:
keytool -export -alias ssodemo -keystore c:zhoubang.keystore -file c:ssodemo.crt -storepass zhoubang
keytool -import -keystore %JAVA_HOME%jrelibsecuritycacerts -file c:ssodemo.crt -alias ssodemo
回车之后,会让你输入密钥库口令,注意,这里的密码必须要输入changeit,不能输入上面指定的密码zhoubang,切记,输入y回车即可,见下图。
配置HTTPS。编辑E:apache-tomcat-7.0.57confserver.xml,找到下面片段:
<!--
<Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
-->
去掉注释,修改成:
【说明】:此时,CAS只是单独运行,至于登录的用户名和密码是什么,请查看:E:apache-tomcat-7.0.57webappscasWEB-INFdeployerConfigContext.xml文件中有
这样一段配置:
这个配置是默认静态配置用户名和密码,那就在浏览器的CAS服务的登陆框中输入用户名casuser和密码Mellon,登录看看效果,就会出现验证成功的页面,如下图。
你也可以在文件中自己配置自己的用户名和密码。
看到上述页面表示CAS-Server已经部署成功。
8.链接数据库
【说明】:我本地使用的是oracle数据库。
需要commons-pool-1.5.6.jar、ojdbc14_10g.jar、cas-server-support-jdbc-4.0.0.jar这。3个jar包放到E:apache-tomcat-7.0.57webappscasWEB-INFlib目录下。
编辑E:apache-tomcat-7.0.57webappscasWEB-INF deployerConfigContext.xml文件,你会看到有这样一段配置:
然后再在这个xml中新加入2个bean配置,如下:
现在,CAS已经支持数据库交互验证了。到此服务端的搭建就完毕了
(2)cas客户端后续写
以上是关于CAS-5.3单点登录/退出客户端搭建(Springboot)的主要内容,如果未能解决你的问题,请参考以下文章