0

在使用 Google 调用 federatedSignIn 时,它会返回一个

“NotAuthorizedException:使用 Google 作为身份提供者时,令牌不是来自此身份池的受支持提供者”

我正在使用第三方库,即 angular5-social-login 来登录谷歌等社交服务提供商。我相信我已经在 cognito 和联合实体中按预期配置了它。

这是我的示例代码

this.socialAuthService.signIn(socialPlatformProvider).then(
      (userData) => {
        console.log(socialPlatform+" sign in data : " , userData);
        // Now sign-in with userData
        let user = {
          email:userData.email,
          name: userData.name
        }
        Auth.federatedSignIn(
          // Initiate federated sign-in with Google identity provider 
          'google',
          { 
              // the JWT token
              token: userData.idToken,
              expires_at: null
          },
          // a user object
          user
      ).then(a => {
          // ...
          console.log(a)
      });

这里是

这是我做的配置

在此处输入图像描述

在联邦实体上

在此处输入图像描述

两者都有相同的谷歌客户端ID

我相信我已经在用户池和联合实体中进行了必要的配置。但是我仍然遇到同样的问题

4

2 回答 2

0

我不熟悉您使用的特定库,但我相信问题很可能是由于您使用的“google”字符串造成的。您应该改为传递“accounts.google.com”。

想到的其他问题:您确定需要用户池吗?也许您只需要一个身份池(联合身份)?如果您只想让您的用户使用 Google 登录,则不需要用户池。

于 2018-09-20T05:48:29.930 回答
0

当我使用cognito身份验证时,这个问题发生在我身上。

我建议您检查您的凭据并确保您的 cognito App Client ID 是正确的。

您可以从用户池中检查该值

App integration => App client settings
于 2020-01-23T14:50:02.800 回答