1

我的 android 应用程序使用 Google Plus 登录,我正在尝试将其与 Cognito 集成。当我运行该应用程序时,它给了我 Cognito Credential Provider ID,当我使用 Google Plus 登录时,它给了我 Google 令牌。我检查了我的 AWS Cognito,它向我展示了这一点。

Unauthenticated connections 3
Google Sign-in 0.

但是,当它使用 Google 正确登录并为我提供 Google 令牌时,我做错了什么?

编辑1:这是我的代码:

使用 Google Plus 登录

Cognito 同步客户端管理器

4

1 回答 1

1

将来,您可能希望包含应用程序中的相关代码,以更好地帮助其他人为您提供帮助。

您是否遵循了集成身份提供者的指南?

同样重要的是要注意 CredentialsProvider 会延迟加载,这意味着仅将令牌添加到提供程序不会关联身份。要确保令牌实际链接到身份,您可以:

  • 调用使用此提供程序的另一个服务(例如 SyncManager)(推荐
  • 显式调用refresh您的 CredentialsProvider。(仅推荐用于测试目的

编辑 1

您是否添加了我在原始答案中建议的测试?如果是这样,如果您收到任何错误怎么办?

您可能需要尝试以下一些步骤来验证您的配置:

  • 通过jwt.io检查令牌。验证令牌的 azp 字段是否与输入到 Cognito 控制台的值匹配。
  • 通过IAM 控制台创建一个 OpenId Connect 提供程序,从 Google 控制台添加所有客户端 ID。在您的 Amazon Cognito 身份池中使用此提供程序而不是基本的 Google+ 集成。
于 2015-02-11T01:05:32.430 回答