我有两个网站:
- 用户注册,登录和其他功能(将在Cognito用户池中创建用户)
- 用户个人资料(自我管理)
这两个网站位于不同的域名下。如何在这两个网站之间实现单点登录(SSO)?
我有两个网站:
这两个网站位于不同的域名下。如何在这两个网站之间实现单点登录(SSO)?
您可以通过以下方式进行操作
问题在于如何安全地从 A 站点传递带有到期值的令牌到 B 站点。Cognito 没有提供内置的 SSO 功能。您需要自行管理令牌的加密、存储和传输。
根据您是否为单独的域名提供单点登录(SSO),您可以选择一种方法。您可以使用存储令牌(如从AWS Cognito获取的id令牌(用户信息)和访问令牌(访问信息)),将其存储在本地存储或cookie中。
使用cookie的问题在于它们只能用于特定域名。因此,它们只允许单个域名的单点登录。如果您需要支持多个域名,则单个cookie解决方案无法满足该要求。 基于令牌的方法(例如OAuth2、OpenID Connect、SAML等)支持多个域名。令牌可以存储在本地存储中,可以被所有域名访问。或者,可以使用多个cookie,每个域名一个。