首页 > 解决方案 > 如何在不单击登录按钮的情况下首次检查 SSO 会话

问题描述

我正在研究 SSO,但我不明白的一件事是 SSO 消费者如何在不点击登录按钮的情况下获得会话。我可以解释如下:

我有:

  1. accounts.domain.com(身份服务器。已允许消费者 1 和 2)
  2. myapp.com(消费者 1)
  3. yourapp.com(消费者 2)

当我去myapp.com-> 我没有权限或没有会话来访问服务器资源。

我点击Sign In按钮myapp.com,这将重定向到accounts.domain.com并在经过身份验证后,我回到myapp.com我的本地会话。

问题是:当我去的时候yourapp.com,我已经有没有点击Sign In按钮的会话。

真实情况是google.com,,,, accounts.google.com...youtube.com

我不知道它是如何工作的以及如何实现它?

还有一个问题,我可以使用Auth0or Google Cloud IdentityorAWS Cognito来构建我Identity Provider的谷歌吗?

有人可以支持我吗?

标签: single-sign-on

解决方案


为了更好地理解这个概念,您首先应该知道当您使用 SSO 登录时会发生什么。

我将以 google 和 YouTube 为例。

当您使用您的凭据登录谷歌时,您不仅会获得本地会话,还会获得单点登录令牌。我们通常将其作为 SAML,它是安全断言标记语言令牌。

在这种情况下,此 SAML 令牌将存储在您的客户端或浏览器中。现在,当您尝试在同一浏览器中加载 youtube 时,此令牌将与请求一起发送到 IDP。由于IDP 知道该用户已经过身份验证,因此它将检查特定网站的授权(在这种情况下为 YouTube),页面加载。


推荐阅读