aws-amplify 多个应用程序单次登录

问题描述 投票:0回答:1

我有多个应用程序,用户通过认知登录进行登录。目前,他们必须使用相同的凭据登录每个应用程序。所有应用程序都位于同一域中。我需要允许用户登录到一个位置,并在他们尝试访问新应用程序时验证其令牌。如果有效,则他们已登录另一个应用程序,否则他们尚未登录。

tl;博士

  • 两个应用程序:同一域上的
    appA
    appB
    (client.mysite.com/appname)
  • 当前用户登录
    appA
    并且
    appB
    分别使用相同的登录凭据
  • 我希望用户登录
    appA
    然后他们尝试访问
    appB
    他们经过验证并允许进入

它们都有相同的用户池和身份池。我打电话给

Auth.currentAuthenticatedUser()
。根据我的理解,如果它们具有相同的 UP 和 IP id 并且在同一域上,则应该允许访问。

如何在没有实际登录的情况下在第二个应用程序上进行身份验证?

平台:Angular 15

库:@aws-amplify/ui-angular:4 aws-amplify:5

amazon-cognito aws-amplify
1个回答
0
投票

我想说,如果您的应用程序位于同一域中,您可以使用 cookie 来跨应用程序存储和共享身份验证信息。

用户登录后,您可以使用用户信息设置 cookie(不要忘记将

Secure
属性与您的
Domain
SameSite=None
作为选项一起使用。您可以阅读有关如何使用 cookie 的更多信息在文档上:https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies

之后,在您的其他应用程序中,您将能够从 cookie 中读取数据,并且将有您将用户视为已登录所需的一切。

© www.soinside.com 2019 - 2024. All rights reserved.