Cognito用户池 - 是否可以为Facebook登录创建自定义注册/表单?

Edm*_*mas 9 authentication federated-identity amazon-web-services facebook-graph-api amazon-cognito

我想使用Cognito用户池进行Facebook登录,这可能是使用内置的登录表单,但我需要使用自己的.

从理论上讲,当谈到自定义表单时,它应该不难:在我从FB收到用户对象后,我将用户和电子邮件属性绑定到我的用户池中的属性并保存.

但是如何处理密码字段和未来的身份验证?在这里,我在旅程中失败了......

...
userPool.signUp('FoobarUser', '**password?**', attributeList, null, function(err, result){
...
Run Code Online (Sandbox Code Playgroud)

在深入研究文档时,我尝试实现一个身份池(联合身份),设法以数据集的形式保存用户信息,但后来我意识到,如果可能的话,查询这些设置将是一个巨大的痛苦.

也许我没有理解这些概念,如果有人可以建议使用Cognito以一种组织良好的方式管理facebook登录,我会非常感激.

age*_*420 13

所以这是我从你的查询中理解的.

建立

  • 将Facebook链接到用户池
  • 应用客户端只允许Facebook登录,不允许其他提供商(甚至不是Userpool)
  • 登录时,您希望Facebook用户的信息自动填充在您的用户池中
  • 您不想使用Cognito的内置UI,而是使用自己的UI

我的2美分

这样,所有Facebook用户都将自动在您的用户池中创建.当然,他们的名字会像Facebook_123jkjdwj一样随机,但根据你的属性映射,他们的所有细节都会从令牌中正确填充.作为优点,来自特定提供商的所有自动创建的用户都被添加到自动创建的组"Userpoolid_providername"中,例如.us_east_1_xxxx_Facebook.

  • 顺便说一下,这个解决方案只有在用户首先授权应用程序时才有效,之后它可以用于登录而无需内置 UI。所以我想现在除了使用 UI 之外别无他法...... :(( (2认同)