android - 为什么 AWS 不允许我使用 Google Plus 进行身份验证?

标签 android amazon-web-services amazon-iam amazon-cognito google-plus-signin

我有一个 Android 项目,我正在尝试使用 AWS Cognito 和 Google Plus 进行身份验证。我已经设置了 Facebook 身份验证并且可以正常工作,但是当我使用 Google Plus 登录时出现 400:未经授权的错误

目前我必须将我的应用程序设置为“允许访问未经身份验证的身份”,以便 Google Plus 用户可以使用它而不会出现未经授权的异常。

我从登录 Google Plus 返回的 token 很好,它还获取用户配置文件和详细信息,所以我认为它与 IAM 以及“编辑身份池”中的“Google 客户端 ID”有关AWS 仪表板中的部分。

目前,我的 OAuth 2.0 服务帐户客户端 ID 来 self 的 Google Developers Console,作为 AWS 仪表板“编辑身份池”部分中的“Google 客户端 ID”

有人请帮忙:)

最佳答案

由于 Google 处理客户端 ID 的方式,我们实际上建议客户使用我们的 generic OpenId Connect support在为 Google 登录配置他们的身份池时。

  1. 转到 AWS IAM 控制台的 identity provider section .
  2. 创建一个 OpenId Connect 身份提供者,提供者 URL 为 https://accounts.google.com和 Audience 作为客户 ID 之一。
  3. 按照创建身份提供商的步骤进行操作,稍后您将可以选择添加其他客户端 ID。
  4. 转到 Amazon Cognito Console .
  5. 创建或编辑身份池并将 OpenID 连接身份提供商添加到池中(它应该出现在 OpenId 连接提供商中)。

如果您以后添加 iOS 或 Web 支持,请在 Google 控制台中创建新的客户端 ID,并将它们添加到 IAM 控制台中的 OpenId Connect 提供商。

关于android - 为什么 AWS 不允许我使用 Google Plus 进行身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31560430/

相关文章:

amazon-web-services - 如何计算短期文件的 S3 定价?

linux - Bash 脚本 - 不传递任何值

amazon-web-services - DynamoDB 触发器(流 + Lambda): details on TRIM_HORIZON?

amazon-web-services - 如何从 CloudFormation 模板中的相同 AWS 角色承担 AWS 角色?

amazon-web-services - AWS Step Functions : it doesn't show list of existing roles while creating a new state machine

Android Studio gradle实验测试(JUNit)

java - 在 Android 中创建单例 CountDownTimer

amazon-web-services - 使用 AWS 开发工具包以 IAM 用户身份登录

Android:saerchable.xml 和 searchSuggestThreshold 参数

android - 应用随机崩溃,A/libc : fatal signal 11