单点登录

定义

多个应用系统中,只需要登录一次就可以访问多个应用系统
单点登录即sso(single sign on)需要一个独立的认证中心,只有认证中心能接受用户的用户名密码等安全信息,其他系统不提供登录入口,只接受认证中心的间接授权。

相同域下的单点登录

sso.a.com
app1.a.com
app2.a.com
问题:

  1. cookie不能跨域名:
    cookie设置为顶域,即a.com这样三个域名都可以用这个cookie
  2. session在自己的范围内不能共享
    打开session共享,Spring-Session

不同域下的单点登录

在这里插入图片描述
参考链接

实现

在这里插入图片描述
sso-client

  1. 拦截子系统未登录用户请求,跳转至sso认证中心
  2. 接收并存储sso认证中心发送的令牌
  3. 与sso-server通信,校验令牌的有效性
  4. 建立局部会话
  5. 拦截用户注销请求,向sso认证中心发送注销请求
  6. 接收sso认证中心发出的注销请求,销毁局部会话
    sso-server
  7. 验证用户的登录信息
  8. 创建全局会话
  9. 创建授权令牌
  10. 与sso-client通信发送令牌
  11. 校验sso-client令牌有效性
  12. 系统注册
  13. 接收sso-client注销请求,注销所有会话

具体可见:https://www.cnblogs.com/ywlaker/p/6113927.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值