You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CAS二次访问SSO地址显示登录成功页 如何跳转至自定义URL

问题产生原因

  • 这是CAS单点登录的标准机制:首次登录完成后,CAS服务端会向浏览器下发有效期内的TGC(Ticket Granting Cookie)会话凭证,同一浏览器下后续访问CAS认证端点时,服务端识别到有效TGC后会直接生成ST(Service Ticket),无需重复触发Okta身份校验流程。
  • 你遇到的二次访问停留在登录成功页的核心原因是/cas/clientredirect接口的默认逻辑存在缺失:已登录场景下,接口没有执行生成ST后跳转到service参数对应地址的逻辑,而是直接返回了静态的登录成功提示页。

自动跳转自定义URL的实现方案

方案1:修改CAS侧接口逻辑(推荐)

调整CAS服务端clientredirect接口的已登录分支处理逻辑:当校验到用户持有有效TGC时,不再返回静态成功页,直接生成ST后拼接至service参数指定的地址执行302跳转即可。如果需要跳转至其他自定义URL,可在该分支增加自定义参数判断,替换跳转目标地址即可。

方案2:静态成功页植入前端跳转逻辑

如果没有CAS服务端修改权限,可以在当前CAS登录成功静态页中插入JS代码,页面加载完成后自动跳转至目标地址,示例代码如下:

// 延迟1秒跳转固定自定义URL,可调整延迟时长方便用户查看成功提示
window.onload = function() {
  setTimeout(() => {
    window.location.href = "https://你需要跳转的自定义地址";
  }, 1000);
}
// 如果需要携带ST跳转回原service地址,可从页面上下文或CAS返回参数中提取ST后拼接跳转

方案3:调整应用访问入口

不要直接将/cas/clientredirect地址作为用户访问入口,改为使用应用受保护资源地址作为入口,未登录时Spring Security会自动触发CAS认证流程,已登录时会直接访问应用资源,不会出现停留在CAS成功页的问题。

内容的提问来源于stack exchange,提问作者mres

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 22:54:03