跨域名单点登录CAS登录方案
2020-05-28 13:50:46 0 举报
登录查看完整内容
完整跨域名单点登录方案,CAS单点登录实现方案
作者其他创作
大纲/内容
a.me.com登录成功,生成自己的登录标识
a.me.com
校验是否登录
b.he.com
返回数据
访问登陆中心的登陆页面,携带登录成功要展示的地址,url携带参数serviceUrl=https://a.me.com/valid/ticket&businessUrl=https://a.me.com/homePage
访问businessUrl
JS跳转到businessUrl
center未登录流程
拦截器校验当前未登录
username/password登录
校验accessToken有效性
u.center.com
filter校验是否登录
浏览器
1.a.me.com未登录,u.center.com未登录2.a.me.com未已登录,u.center.com已登录3.a.me.com已登录,u.center.com已登录,a.me.com内部访问b.he.com,携带at,b.he.com去center校验4.a.me.com已登录,u.center.com已登录,b.he.com未登录,流程与流程2完全相同
内部访问b.he.com接口
center已登录流程
登录标识写入cookie
center/me已登录流程
新的有效期
校验成功,返回accessToken及有效期
跳转到businessUrl
定时更新accessToken或校验失败的时候更新
center返回Cookie给前端,作为center登录的标识
302到登录页面:前往认证中心地址或401由前端自己跳转
展示登录页面
业务访问businessUrl页面或接口
处理数据
内部接口校验ticket是否有效
携带accessToken
已登录302到ticket地址,携带ticket
已登录,生成ticket并缓存到redis,指向ticket地址
成功
https://a.me.com/valid/ticket?ticket=xxxxxxx&business=businessUrl=https://a.me.com/homePage
redis缓存生成cookie
0 条评论
回复 删除
下一页