nutz有没有单点登录的demo
6 回复
我觉得呢,你先搞清楚cas的原理吧.
session不能共享的, 除非两个系统用同一套cookie, 不然没法识别, 做起来也不划算.
一般是做成这样: 在A系统登录了, 那么, 访问B系统时, 显式(页面跳转到A系统然后跳回来), 或者隐式(走ajax), 让其在B系统也变成登录状态.
A可以是一个cas, sso, 或者与B完全一样的系统都行哦. 假设用户在A系统是登录状态, 走以下流程:
首先, 访问A系统的/sso/token, 该入口方法返回一个token=ABC, 并存储在A系统的数据库中
然后, 访问B系统的/sso/check?token=ABC, B系统的这个入口方法, 拿到token后, B系统访问A系统的/sso/token/check?token=ABC
若A系统认可该token, 返回用户id, 这时候, B系统拿到了用户id, 执行登录操作.
自此, B系统也变成已登录状态了.
添加回复
请先登陆