Cas 服务器 Service(Cas客户端)注册信息维护
作为Cas服务器,允许哪些客户端接入与否是通过配置来定义的。对Cas服务器来说,每一个接入的客户端与一个Service配置对应;在Cas服务器启动时加载并注册上这些Service,与之对应的客户端才能接入。否则将出现

一、假设Cas服务器为HTTPS类型
假设我们的Cas服务器运行在8443端口,以HTTPS协议对外提供服务(《Cas 服务器 下载、编译及部署》中的cas服务器配置)。
1.1 Cas客户端类型为HTTP应用时的配置
假设我们的Cas客户端以HTTP协议来对外提供服务,对外提供服务的域名及端口信息为:http://localhost:8081。
注:如果有多个HTTP Cas客户端,要实现用户在A Cas客户端登陆后在B Cas客户端也可被设别,需要在Cas服务器配置文件中将TGC设为非安全模式:
cas.tgc.secure=false
1.1.1 在Cas服务器上注册Cas客户端(Service)
从target>cas>WEB-INF>classes下复制service目录到src>main>resources下,删除复制来目录中的Apereo-10000002.json文件,将HTTPSandIMAPS-10000001.json重命名为TEST-10000003.json,如下图:

将TEST-10000003.json文件内心修改如下:
{
"@class" : "org.apereo.cas.services.RegexRegisteredService",
"serviceId" : "^(http)://localhost:8081.*",
"name" : "TEST",
"id" : 10000003,
"description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.",
"evaluationOrder" : 10000
}
注:json文件名字由文件内容中的 name-id 组合而成,关于json文件中的各个属性的涵义及更深入内容可参考https://blog.csdn.net/anumbrella/article/details/82119246
在pom中添加对json文件services注册支持的依赖
<dependency>
<groupId>org.apereo.cas</groupId>
<artifactId>cas-server-support-json-service-registry</artifactId>
<version>${cas.version}</version>
</dependency>
修改application.properties
#开启json格式service注册
cas.serviceRegistry.initFromJson=true
# Json services 配置位置设定
cas.serviceRegistry.json.location=classpath:/services
build run 启动Cas服务器
1.1.2 在Cas客户端电脑上导入Cas服务器证书
根据密钥导出证书
使用之前创建密钥的KeyStore Explorer(下载地址:https://download.csdn.net/download/popo_popo/10750816),打开之前保存的密钥库文件。


证书导入
使用keytool进行证书导入工作,证书导入完成后用Cas客户端访问成功!

登陆成功后返回受保护的地址

注:如果Cas客户端不导入证书,Cas客户端程序将会出现证书异常而结束执行。关于Cas客户端的内容将放在后续文章之中。
1.2 Cas客户端类型为HTTPS应用时的配置
请关注后续文章
二、假设Cas服务器为HTTP类型
假设我们的Cas服务器运行在8080端口,以HTTP协议对外提供服务(《Cas 服务器 使用HTTP协议对外服务》中的cas服务器配置)。
2.1 Cas客户端类型为HTTP应用时的配置
该配置与1.1.1中的配置完全相同,因为不使用HTTPS,所以不用导入证书操作。
Cas 服务器 Service(Cas客户端)注册信息维护的更多相关文章
- 如何进行SCCM中客户端记录信息维护
SCCM 部署完毕之后,不久我们就会发现客户端代理状态,因为重装系统,非正常的退域,长时间不开机,导致客户端状态有不可用的,有过期的,重复的记录很多.当然我们可以手动的快速删除重复的记录,那么怎么能做 ...
- Cas 服务器 为Service定义UI
Cas服务器允许用户为每个Service自定义登陆等UI外观,但需要尊着Cas定于的规则: 一.为Service配置theme(主题) 在<Cas 服务器 Service(Cas客户端)注册信息 ...
- cas协议,以及tomcat搭建cas服务器
1. CAS 简介 1.1. What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的.开源的项目,旨 ...
- CAS (6) —— Nginx代理模式下浏览器访问CAS服务器网络顺序图详解
CAS (6) -- Nginx代理模式下浏览器访问CAS服务器网络顺序图详解 tomcat版本: tomcat-8.0.29 jdk版本: jdk1.8.0_65 nginx版本: nginx-1. ...
- CAS 之 Apereo CAS 简介(一)
CAS 之 Apereo CAS 简介(一) Background(背景) 随着公司业务的不断扩展,后台接入子系统不断增多,那么我们将针对不同的平台进行拆分为各自对应的子系统, 权限是不变的,那么我们 ...
- Cas服务器设置(java),java、php客户端配置
由于多个项目需要帐号的互通,所以一开始就是用cas去做的,不得不说cas要配置的东西挺多的,但是项目安全性不需要太高,所以没有做https的请求,也就是没有弄证书,这虽然省了很多时间和精力,但是项目之 ...
- 单点登录CAS使用记(二):部署CAS服务器以及客户端
CAS-Server下载地址:https://www.apereo.org/projects/cas/download-cas CAS-Client下载地址:http://developer.jasi ...
- 单点登录CAS使用记(七):关于服务器超时以及客户端超时的分析
我的预想情况 一般情况下,当用户登录一个站点后,如果长时间没有发生任何动作,当用户再次点击时,会被强制登出并且跳转到登录页面, 提醒用户重新登录.现在我已经为站点整合了CAS,并且已经实现了单点登录以 ...
- Cas服务器以及客户端搭建
一.搭建cas服务器 官网:http://jasig.github.io/cas/ Cas Server 下载:http://developer.jasig.org/cas/ Cas Client 下 ...
随机推荐
- mamp使用
MAMP Pro软件是一款很好的在MAC下面运行的网站集成环境软件,功能强大,配置简单,十分便于本地调试,其由Apache+MySQL+PHP+动态DNS配置构成,PHP的版本可以动态切换到最新版.无 ...
- Docker中运行nginx并挂载本地目录到镜像中
1.1 从hup上pull镜像1.2 创建将要挂载的目录1.3 先要有配置文件才能启动容器1.3.1 vim /data/nginx/conf/nginx.conf1.3.2 vim /data/ng ...
- centos7下安装samba服务器
samba笔记: http://services.linuxpanda.tech/%E7%BD%91%E7%BB%9C%E6%96%87%E4%BB%B6%E5%85%B1%E4%BA%AB/samb ...
- eclipse使用maven打包的时候发现静态资源没包含进去
今天在打包的时候,发现传上去的包里没有配置静态资源. (右键项目--->Run As ---> 8 Maven install ) 后来发现是因为在pom.xml里没有配置打包静态资源的 ...
- python使用多进程
python多线程适合IO密集型场景,而在CPU密集型场景,并不能充分利用多核CPU,而协程本质基于线程,同样不能充分发挥多核的优势. 针对计算密集型场景需要使用多进程,python的multipro ...
- JavaScript之ECMA对象的学习
从传统意义上来说,ECMAScript 并不真正具有类.事实上,除了说明不存在类,在 ECMA-262 中根本没有出现“类”这个词.ECMAScript 定义了“对象定义”,逻辑上等价于其他程序设计语 ...
- Python机器学习笔记:XgBoost算法
前言 1,Xgboost简介 Xgboost是Boosting算法的其中一种,Boosting算法的思想是将许多弱分类器集成在一起,形成一个强分类器.因为Xgboost是一种提升树模型,所以它是将许多 ...
- anoconda包管理汇总
anoconda默认的seaborn版本是0.8.1 seaborn的最新版本是0.9.0 并且已经没有0.8.1的文档了. 升级anoconda的seaborn版本 进入anoconda prom ...
- Docker在Linux上运行NetCore系列(五)更新应用程序
转发请注明此文章作者与路径,请尊重原著,违者必究. 本篇文章与其它系列文章不同,为了方便测试,新建了一个ASP.Net Core视图应用. 备注:下面说的应用,只是在容器中运行的应用程序. 查看现在运 ...
- MyBatis学习总结(一)——ORM概要与MyBatis快速起步
程序员应该将核心关注点放在业务上,而不应该将时间过多的浪费在CRUD中,多数的ORM框架都把增加.修改与删除做得非常不错了,然后数据库中查询无疑是使用频次最高.复杂度大.与性能密切相关的操作,我们希望 ...