CAS SSO能否级联

发布于 2022-08-24 10:50:31 字数 208 浏览 14 评论 0

我们的系统(以下简称A),其各个子系统之间使用CAS(简称CAS-A)来共享身份。
现在A要以一个子系统的角色加入到一个更大的系统(简称B)之中,而B也使用CAS(简称CAS-B)。
能否实现不修改A中的各个子系统,而是让CAS-A级联到CAS-B,即:

  • A中的各个子系统仍然使用CAS-A
  • CAS-A使用CAS-B来做身份验证

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

就此别过 2022-08-31 10:50:31

1. 既然都是CAS,既然认证源要全部使用B的,可以考虑直接将CAS-A的域名切到CAS-B上,这应该是最简单的办法

2. 如果确实希望有两台并行的CAS Server,那么有以下两点需要完成:

1) 用户名密码统一
由于CAS本身不对外发布认证源内容(这样也非常不安全),所以不能直接将CAS-A的认证源指向CAS-B前端服务,但可以指向其后端的认证源。例如CAS-B用的某一个LDAP做认证,CAS-A就也配置成指向那个LDAP,这样用户名密码就统一了。可接受的认证源及其配置查看此页面

2) 登录状态一致
如果你希望两个CAS上登录的人可以保持登录状态一致(即在B登录过的人访问A的Service时自动登陆,反之亦然),那么除了做到第二点外还需要将CAS-A的Ticket Registry切到与CAS-B一模一样,以保证TGT和ST的共享。如果希望各自登录状态保持独立,只是用户名密码一致,CAS-A就必须继续使用一个自有的Ticket Registry。可接受的Ticket Registry及其配置请查看此页面的子页面。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文