关于第一次成功登录后,登录其它系统
第一次登陆后,可以在知道在CAS系统中已经有了该用户的全局票据。
但在访问其它系统的时候,如何告诉CAS,我是这个用户,因为不同顶级域名,cookie无法互通,所以在其它系统下,似乎没有可以表明自己身份的cookie?
35
收起
正在回答
2回答
Cookie在自己系统中获得后再跳转到cas验证噢~具体可以看下代码。
另外目前chrome已经禁止了这一做法,因为不安全。而且也不推行这种方式了。了解一下即可哈~
机关枪
2021-03-28 20:03:42
首先系统A去访问受限资源,跳转到sso认证中心https://login.sso.com/login?redirectURL=https://www.a.com/center,用户登录成功之后,sso认证中心生成一个令牌(如token)返回给系统A。
其实这时候,浏览器中存有两个Cookie,一个是系统A的,一个sso认证中心的,并且对应的session都是登录状态。
然后系统B第一次去访问受限资源,依然要先跳转sso认证中心,https://login.sso.com/login?redirectURL=https://www.b.com/center,此时,sso认证中心发现携带的Cookie(sso认证中心域名的Cookie)对应的session是登录状态的,那就直接省去登录的过程,直接把用户的令牌返回给系统B就行了。
此时浏览器中有三个Cookie,对应的session都是登录状态的!!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星