问题标签 [amazon-cognito-facebook]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
976 浏览

aws-sdk - Cognito 用户池 - 链接的提供者如何进行身份验证

我有一个常规的 Cognito 用户设置,我们有一个 lambda 函数,它使用adminLinkProviderForUserAPI 将社交提供者帐户链接到这个常规用户。

发生这种情况后,用户池用户正确显示identities用户属性中的链接:

[{"userId":"16625876272112","providerName":"Facebook","providerType":"Facebook","issuer":null,"primary":false,"dateCreated":1519293430376}]

从这一点开始,我正在努力在下次登录时对 Facebook 用户进行实际身份验证。我希望能够使用 facebook 访问令牌登录到 cognito,并以某种方式cognito 返回链接的 cognito 用户的有效令牌。目前我只能做一个基本的身份验证(用户名+密码)来检索它。所以目前我不能将链接用于任何事情。

任何帮助将不胜感激。

谢谢。

0 投票
1 回答
1205 浏览

amazon-web-services - 使用 Cognito UserPools 进行社交登录的 Boto3

我有一个带有注册/登录选项的移动应用程序。移动应用程序调用 Rest API,API 使用 Python boto3 CognitoIdentityProvider客户端在 AWS Cognito 用户池中创建用户。使用电子邮件/密码登录可以正常工作。

对于社交登录,移动应用程序使用 google 登录和获取 idToken、accessToken 进行更新。如何使用谷歌返回的登录令牌从后端 python 环境在 Cognito 用户池中登录/创建用户?这可行吗?

对于用户名/密码选项,我使用注册admin_initiate_auth方法。但不确定在使用 google/facebook 登录选项时使用什么来允许用户在 UserPool 中签名或创建用户。

本质上,Boto3 或其他 AWS 库中有一种方法可以使用 google/facebook 返回的 idToken> 在 UserPool 中创建用户

0 投票
0 回答
251 浏览

amazon-dynamodb - AWS Cognito 联合身份、用户注册和 DynamoDB

我想知道是否有人可以提供帮助。我正在尝试为我正在计划的 Web 应用程序规划我需要的 AWS 服务以及它们如何组合在一起。

具体来说,我正在考虑使用 Cognito 和 DynamoDB 的用户注册和登录过程。

用户需要注册并登录才能执行某些操作。我在考虑无服务器,所以这些操作将是 API Gateway 前面的 Lambda 函数。与许多网站一样,我想使用 Facebook 作为用户身份验证模型。我想我需要:

  • 创建 Facebook 应用程序
  • 使用 Facebook 应用程序 ID 配置 Cognito 联合身份
  • 让 DynamoDB 表包含用户信息
  • 提供允许用户使用其 Facebook 身份进行注册的设施
    • 注册时,在 DynamoDB 用户信息表中创建一条记录,其中包含从 Facebook 个人资料中获取的用户名、电子邮件等
  • 为注册用户提供使用其 Facebook 身份登录的便利
  • 以某种方式将后续客户端请求中的用户令牌(JWT 令牌?)传递给 API 网关端点

到目前为止,我已经创建了 Facebook 应用程序并拥有一个应用程序 ID。我已经为该应用创建了 Cognito 联合身份,并使用我的 Facebook 应用 ID 对其进行了配置。我已将 API 网关的方法请求的授权字段设置为“AWS_IAM”

使用 Facebook javascript SDK 和 AWS javascript SDK,我整理了一个非常基本的页面,允许通过 Facebook 登录,然后AWS.CognitoIdentityCredentials使用 facebook authResponse accessToken 创建一个新对象。最后,它调用AWS.config.credentials.get以获取 Cognito 凭据。但这并不是真正的上述步骤 - 它只是证明用户可以使用他们的 Facebook id 登录,我可以将其传递给 Cognito。

因此,我的具体问题是:

  1. 我正在努力解决的是如何进行注册。用户通过 Facebook 登录后,如何在 DynamoDB 中创建用户记录?
  2. 同样,当用户登录(而不是注册)时,一旦用户通过 Facebook 登录,我如何确保他们在 DynamoDB 中有用户记录?(因为如果他们没有记录,那么大概他们没有注册)
  3. 最后,如何将用户 ID/令牌从客户端传递到 API 网关端点?

我不是在寻找代码示例等 - 只是关于我是在思考正确的路线还是在寻找错误的树的指针。各种组件需要如何连接在一起的高水平将是很好的,任何链接或对类似概念的引用也是如此。

谢谢

0 投票
1 回答
2448 浏览

ios - 将 Facebook 登录与 AWS Cognito 用户池集成

我正在尝试将 aws 用户池集成到我的项目中。我设法使用电子邮件和密码进行正常登录,但我需要使用 Facebook 添加登录。

根据我在文档中阅读的内容,为此我需要在联合身份中创建一个身份池。我创建了一个并为身份验证提供程序添加了以下配置:- 在 Facebook 选项卡中添加我的 Facebook 应用程序 ID,- 在 Cognito 选项卡中为我的用户池添加我的用户池 ID 和应用程序客户端 ID。

在我的用户池中,在来自联邦的身份提供者中,我选择 Facebook,为此我添加了我的 Facebook 应用程序 ID 和应用程序密码。

在我的应用程序中,我实现了一个 AWSIdentityProviderManager,其中包含:

这是我的 Facebook 登录代码:

登录工作,但是当我在用户组部分查看我的用户池时,我看不到那里的用户。

有没有其他解决方案来集成 Facebook 登录,只使用用户池而不使用身份池?

0 投票
1 回答
750 浏览

facebook - 在 aws 中使用 facebook 登录时用户未在用户池中创建?- 安卓

我想知道当用户使用 facebook 登录时如何在用户池中创建用户条目。我能够集成 aws cognito 并且 facebook 登录就好了,但是使用 facebook 登录时用户没有在用户池中创建。身份 ID 正在默认 facebook 组中创建。

0 投票
1 回答
58 浏览

amazon-web-services - 联合身份登录后将用户添加到 cognito 用户池的最佳方法是什么?

在使用 Android SDK 时,如果用户使用 Google 或 Facebook 等第三部分身份提供商登录,Cognito 不会自动将用户添加到用户池中。

做这个的最好方式是什么?我应该从 Android 应用程序注册用户吗?成功登录后,我可以使用相关电子邮件查找用户,并且我可以显示用户信息以让他们输入他们的信息。

谢谢你。

0 投票
0 回答
297 浏览

aws-lambda - 适用于 facebook 用户的 AWS Cognito 具有无服务器框架

我使用用于 AWS 无服务器应用程序的无服务器框架来创建 REST 完整 API。

要求

任何用户(例如注册、facebook、google)任何设备(例如移动或网络)都使用通过 JWT 令牌进行身份验证的 API。如果令牌有效,用户可以通过AWS API Gateway访问AWS Lambda函数。

我所做的

将 AWS Cognito 用户池用于注册用户和 Facebook 用户,对于社交用户,我使用身份提供商获取 JWT 令牌,即访问 API。它工作得很好。

我需要的

对于社交登录中的移动用户,Facebook 提供访问令牌,使用该令牌我可以注册或登录AWS Cognito 用户池而不是AWS Cognito 联合身份吗?登录后AWS Cognito 用户池提供 JWT 令牌,用于使用 AWS API 网关访问 AWS lambda 函数.

为什么我需要

由于无服务器框架使用 JWT 处理授权者。关联

是正确的流量吗?

0 投票
1 回答
593 浏览

aws-cognito - 将 Facebook“封面”属性映射到 Cognito 用户池“图片”属性不起作用

我已将 Facebook“封面”属性映射到 Cognito 用户池“图片”属性,它曾经可以工作。但是现在我在映射到 Cognito 用户池的图片的响应中得到 404。

0 投票
1 回答
235 浏览

react-native - 如何允许用户通过 Cognito 或 Social Provider 进行身份验证

我不知道如何让我的用户在 react-native 应用程序中同时使用 Cognito 和 Facebook 等社交服务提供商。

假设用户首先创建一个带密码的用户名。后来决定将他的帐户与 Facebook 连接起来。我想让他只需使用 Facebook 按钮即可登录,而无需再次输入。电子邮件+密码。

谢谢。

0 投票
0 回答
352 浏览

javascript - 使用 aws-amplify.js 注册 Facebook 登录用户

我在 AWS Cognito 中手动配置了用户池和身份池。在用户池中,我输入了 Facebook 应用程序 ID、应用程序密码、授权范围(public_profile 和电子邮件),然后在身份池中,我输入了用于 Cognito 的用户池 ID 和应用程序客户端 ID,以及用于 Facebook 身份验证的 Facebook 应用程序 ID。

当用户使用 facebook 登录时,放大验证没有问题,但如果用户是新用户,它不会在用户池中创建用户。如果用户池中不存在使用 Facebook 登录的用户,是否有任何方法可以配置 amplify?

或者我可以以编程方式在用户池中创建用户吗?