我们的系统(以下简称A),其各个子系统之间使用CAS(简称CAS-A)来共享身份。现在A要以一个子系统的角色加入到一个更大的系统(简称B)之中,而B也使用CAS(简称CAS-B)。能否实现不修改A中的各个子系统,而是让CAS-A级联到CAS-B,即:A中的各个子系统仍然使用CAS-ACAS-A使用CAS-B来做身份验证
1 回答
潇湘沐
TA贡献1816条经验 获得超6个赞
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。
- 1 回答
- 0 关注
- 199 浏览
添加回答
举报
0/150
提交
取消