为经过身份验证的用户获取凭据提供程序
Get Credential Provider for Authenticated Users
我的 android 应用程序使用 Google 登录 另外,我正在尝试将它与 Cognito 集成。当我 运行 应用程序时,它会给我 Cognito 凭据提供者 ID,当我使用 Google Plus 登录时,它会给我 Google 令牌。我检查了我的 AWS Cognito,它向我显示了这个。
Unauthenticated connections 3
Google Sign-in 0.
但是当它用Google正常登录的时候,还给我GoogleToken,那我是哪里做错了?
编辑 1: 这是我的代码:
将来,您可能希望包含应用程序中的相关代码,以更好地帮助其他人帮助您。
您是否遵循了 integrating identity providers 的指南?
同样重要的是要注意 CredentialsProvider 执行延迟加载,这意味着简单地将令牌添加到提供者不会关联身份。为确保令牌实际链接到身份,您可以:
- 调用另一个使用此提供程序的服务(例如 SyncManager)(推荐)
- 在您的 CredentialsProvider 上明确调用
refresh
。 (仅推荐用于测试目的)
编辑 1
您是否添加了我在原始答案中建议的测试?如果是这样,如果您收到任何错误怎么办?
您可能想尝试以下某些步骤来验证您的配置:
- 通过 jwt.io 检查令牌。验证令牌的 azp 字段是否与输入到 Cognito 控制台的值匹配。
- 通过 IAM console 创建 OpenId Connect 提供商,从 Google 控制台添加所有客户端 ID。使用此提供商而不是 Amazon Cognito 身份池中的基本 Google+ 集成。
我的 android 应用程序使用 Google 登录 另外,我正在尝试将它与 Cognito 集成。当我 运行 应用程序时,它会给我 Cognito 凭据提供者 ID,当我使用 Google Plus 登录时,它会给我 Google 令牌。我检查了我的 AWS Cognito,它向我显示了这个。
Unauthenticated connections 3
Google Sign-in 0.
但是当它用Google正常登录的时候,还给我GoogleToken,那我是哪里做错了?
编辑 1: 这是我的代码:
将来,您可能希望包含应用程序中的相关代码,以更好地帮助其他人帮助您。
您是否遵循了 integrating identity providers 的指南?
同样重要的是要注意 CredentialsProvider 执行延迟加载,这意味着简单地将令牌添加到提供者不会关联身份。为确保令牌实际链接到身份,您可以:
- 调用另一个使用此提供程序的服务(例如 SyncManager)(推荐)
- 在您的 CredentialsProvider 上明确调用
refresh
。 (仅推荐用于测试目的)
编辑 1
您是否添加了我在原始答案中建议的测试?如果是这样,如果您收到任何错误怎么办?
您可能想尝试以下某些步骤来验证您的配置:
- 通过 jwt.io 检查令牌。验证令牌的 azp 字段是否与输入到 Cognito 控制台的值匹配。
- 通过 IAM console 创建 OpenId Connect 提供商,从 Google 控制台添加所有客户端 ID。使用此提供商而不是 Amazon Cognito 身份池中的基本 Google+ 集成。