【问题标题】:What Google oAuth 2 application type should I use for web and mobile apps? Will Cognito recognise them as the same?我应该为 Web 和移动应用程序使用哪种 Google oAuth 2 应用程序类型? Cognito 会认出它们是一样的吗?
【发布时间】:2014-11-27 20:50:37
【问题描述】:

我想将 Google 的社交身份验证用于应用程序和网站。

使用Google console,我有三种帐户类型可供选择:

  • 服务
  • 网络
  • 已安装

And Installed 为我提供了以下选项:

  • 安卓
  • iOS

鉴于我支持 iOS 和 Android,我应该为每个创建凭据吗?

也在 AWS Cognito 中。如果我使用这些选项中的每一个的凭据,如果用户在所有平台上进行身份验证,它们最终是否会解析为相同的 Cognito ID?

【问题讨论】:

    标签: authentication google-oauth amazon-cognito


    【解决方案1】:

    是的,您需要为每个应用程序创建单独的“客户端 ID”。如果它们用于相同的整体应用程序,那么它们应该在同一个项目中。 您需要创建单独的客户端 ID 的原因是每个平台都有不同的安全属性,我们需要更多特定于该用例的信息。 例如,在 web 上,我们依靠重定向 url 将令牌返回给您,但在 Android 上,您需要向我们提供证书的包名和哈希。

    但是,如果用户在网络上批准您的应用程序一次,然后在 android 上针对相同的范围,您将获得自动批准。

    不能 100% 确定 Amazon Cognito,但您应该为同一个用户获得相同的 ID(来自 Google),并且应该绑定到相同的 Cognito ID。 顺便说一句,您还应该查看 Google Identity Toolkit。

    【讨论】:

      【解决方案2】:

      Amazon Cognito 和 IAM 已推出generic OpenID Connect support。通过此次发布,您现在可以使用在 Google 控制台中创建的所有客户端 ID 创建一个 OpenId Connect 提供程序in IAM

      从那里,您可以在Cognito console 中使用该提供商配置您的身份池。之后,无论用户使用哪个平台(iOS/Android/Web)进行身份验证,Cognito 都可以识别您的应用程序的用户。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-06-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-07
        • 1970-01-01
        相关资源
        最近更新 更多