手把手教Apereo CAS5.2.3 Client客户端的配置
hugeo的CAS系列:https://blog.csdn.net/u010588262/article/category/7548325
DEMO下载:https://download.csdn.net/download/u010588262/10327539
配置host
下载官方demo进行改造
https://github.com/cas-projects/cas-sample-java-webapp
项目配置
官方demo导入idea
修改web.xml,主要是cas服务端的地址和客户端的地址
配置调试
注意一下这里jre的配置,我电脑上有独立的jdk和jre,同时jdk里面有jre文件夹,要使用咱们在这篇里面https://blog.csdn.net/u010588262/article/details/79741626 第3步的这个jre目录才可以:
否则待会测试的时候会报错的:
客户端注册
还差最后一步了,如果这时候你猴急猴急的开始测试,就会遇到下面这种情况:
同时服务端会有警告,可以根据警告判断应该注册的域名是什么
这是因为咱们的客户端的域名没有在服务端进行注册,注册也很简单
咱们回到服务端的项目中,从overlays或者cas_war(不明白的话回去看服务端的配置博客吧https://blog.csdn.net/u010588262/article/details/79741626)中把services目录拷贝到项目里:
新增一个json文件:
文件名按照规范用name-serviceId.json吧,里面的内容也很好理解:
- @class:必须为org.apereo.cas.services.RegisteredService的实现类
- serviceId:对服务进行描述的表达式,可用于匹配一个或多个 URL 地址
- name: 服务名称
- id:全局唯一标志
- evaluationOrder:定义多个服务的执行顺序
同时在application.properties里添加如下内容,开启服务端对json配置的读取:
#开启识别json文件,默认false
cas.serviceRegistry.initFromJson=true
#自动扫描服务配置,默认开启
cas.serviceRegistry.watcherEnabled=true
#120秒扫描一遍
cas.serviceRegistry.repeatInterval=120000
#延迟15秒开启
#cas.serviceRegistry.startDelay=15000
#资源加载路径
cas.serviceRegistry.config.location=classpath:/services
到这里客户端就ok了,登录成功之后是这样的:
要测试多个客户端单点登录的话照葫芦画瓢在搞一次改个域名就行了