单点登录的认证过程,我拿到票据了, 可以卖肉了吗?

单点登录(SSO)确保用户只需一次登录即可访问多个子系统。当用户尝试访问子系统A时,未登录的用户会被重定向到SSO服务D进行身份验证。验证成功后,服务D生成Token和票据,子系统A接收到票据后会向D验证,确保安全并允许用户访问。此步骤防止伪造票据,验证票据有效性和用户信息。
摘要由CSDN通过智能技术生成

我拿到票据了, 可以卖肉了吗?
SSO: 只能买一两, 不能再多了

单点登录的认证过程是如何的, 比方说单点登录服务D, 子系统A和B, A B D和浏览器之间是如何通信的

以下是单点登录(SSO)过程的详细步骤:

  1. 用户尝试访问子系统A。
  2. 子系统A检查用户是否已登录(例如检查本地会话)。
  3. 子系统A发现用户未登录,将用户重定向到单点登录服务D的登录页面。
  4. 用户在单点登录服务D的登录页面上输入用户名和密码。
  5. 用户提交登录表单。
  6. 单点登录服务D验证用户凭据。
  7. 验证成功后,单点登录服务D生成Token(如JWT)和子系统A的服务票据。
  8. 单点登录服务D将用户重定向回子系统A,并附加服务票据。
  9. 子系统A接收服务票据,并向单点登录服务D验证服务票据。
  10. 验证成功后,子系统A将用户标记为已登录,并允许访问资源。
  11. 用户尝试访问子系统B。
  12. 子系统B检查用户是否已登录。
  13. 子系统B发现用户未登录,但注意到浏览器已经有了来自单点登录服务D的Token。
  14. 子系统B将Token发送到单点登录服务D以验证其有效性。
  15. 单点登录服务D验证Token,并为子系统B生成服务票据。
  16. 单点登录服务D将服务票据发送回子系统B。
  17. 子系统B接收服务票据,并将用户标记为已登录。
  18. 用户现在可以访问子系统B的资源。

大概的过程如下:

单点登录(SSO)过程中, 子系统A接收服务票据,并向单点登录服务D验证服务票据, 为什么要进行这一步骤, 没有这一个步骤行不行

在单点登录(SSO)过程中,子系统A接收服务票据并向单点登录服务D验证服务票据这一步是确保安全性的重要步骤。这有以下几个原因:

  1. 防止伪造服务票据:验证服务票据可以确保票据是由单点登录服务D颁发的,而不是伪造的。如果不进行这个步骤,攻击者可能会伪造服务票据,尝试绕过身份验证过程,访问受保护的资源。

  2. 验证票据有效性:服务票据可能包含过期时间、签名等信息。通过验证服务票据,子系统A可以确保票据未过期且未被篡改。

  3. 获取用户信息:服务票据可能包含用户的相关信息(如用户ID、角色等)。子系统A可以通过验证服务票据来获取这些信息,并在处理请求时使用这些信息。

如果跳过这一步,子系统A将无法确认服务票据的真实性和有效性,从而可能导致安全漏洞。因此,在单点登录过程中,验证服务票据是非常重要的一环。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值