java - CAS单点登录接入service可以是多的吗?

查看:116
本文介绍了java - CAS单点登录接入service可以是多的吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

CAS单点登录接入service可以是多的吗?

也就是说service 参数是否支持数组?

还有认证的服务必须是https开头的吗。为什么http:开头的就不能了?

解决方案

serviceId 支持正则表达式匹配规则,向如下的表达式即支持https/http所有的请求。如果这还无法满足楼主的需求可以自己实现RegisteredService

{
  "@class" : "org.apereo.cas.services.RegexRegisteredService",
  "serviceId" : "^(https|http)://.*",
  "name" : "HTTPS and IMAPS",
  "id" : 10000001,
  "description" : "This service definition authorizes all application urls that support HTTPS and IMAPS protocols.",
  "evaluationOrder" : 10000
}

认证中心服务可以使用http的方式。修改时注意修改cookie.secure配置。
Ticket Granting Cookie

cas.tgc.secure=false

不然使用httpcookie设置不成功,因为securetrue时只能使用https
不过现在使用https也很好,像StartSSL与其它SSL厂商也提供了免费的SSL证书。


登录在cas中已经是实现了,有2种模式。我们是采用的后端退出,就是用户点击登出cas会请求对应的应用服务器进行退出。
SingleSignOutFilter
其实就是在请求地址上增加一个特殊的参数,filter如果发现有该参数,会在当前应用中做登出操作。

这篇关于java - CAS单点登录接入service可以是多的吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆