如何使CAS重定向到除http或https之外的其他协议

时间:2015-01-13 14:37:54

标签: cas

我尝试了一种让SSO适用于我的桌面应用程序的方法。为此,我需要CAS重定向到用户定义的协议。

我想做什么:

致电https://localhost:8443/cas-server-webapp-4.0.0/login?service=sso://myapplication 成功登录后,重定向到sso://myapplication?ticket=someTicket

但结果是,我被重定向到https://localhost:8443/cas-server-webapp-4.0.0/sso://myapplication?someTicket

我是否必须更改CAS配置中的某些内容或者这是一个错误?

编辑:

我正在使用开箱即用的CAS,直到现在还没有完成配置。我唯一更改的是ssoorg.jasig.cas.services.RegexRegisteredService作为允许的协议添加到p:serviceId="^(https?|imaps?|sso?|file?)://.*"

1 个答案:

答案 0 :(得分:1)

我认为它不是来自CAS服务器本身。重定向到服务由登录Webflow管理:https://github.com/Jasig/cas/blob/master/cas-server-webapp/src/main/webapp/WEB-INF/webflow/login/login-webflow.xml#L147。 我担心当向网址请求重定向时,这种行为来自浏览器,这似乎不是一个有效的网址(我的意思是从http / https开始)。我会尝试在登录时使用method = POST参数使用POST重定向。