oauth-2.0 - 当需要电子邮件属性但 Facebook 不提供时,用户如何通过 Facebook 注册 Cognio 用户池?

标签 oauth-2.0 facebook-login aws-cognito

我的 AWS Cognito 池将电子邮件作为必需属性。所有注册我的应用程序的用户都被要求提供他们的电子邮件。

我最近将 Facebook 作为身份提供者添加到我的用户池中。

问题是 Facebook 并不总是提供电子邮件,在这种情况下,Cognito 会将新用户重定向到一个错误页面,上面写着“需要电子邮件”。

我想提示用户输入他/她的电子邮件,然后继续注册过程,而不是仅仅以错误结束。有没有办法做到这一点?

最佳答案

Cognito 用户池目前无法做到这一点。

我在与客户合作时遇到了同样的例子,即使同意适当的范围,Facebook 也不会在 OpenID token 中提供它。

我怀疑电子邮件可以通过此后的 API 检索,因此您可能会在 Cognito 用户池中获得一些运气 trigger去检索电子邮件并将其填充到认证后(如果丢失)。

否则,除了将电子邮件地址设为可选,然后围绕此设计客户体验之外,您无能为力。

关于oauth-2.0 - 当需要电子邮件属性但 Facebook 不提供时,用户如何通过 Facebook 注册 Cognio 用户池?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48154575/

相关文章:

php - 如何在 php 中获取谷歌分析实时 activeUsers?

javascript - Facebook 登录按钮 onlogin ="function"给出 ReferenceError

amazon-web-services - 无需验证电子邮件的 Cognito

amazon-web-services - AWS ApiGateway Lambda 代理访问授权方

amazon-web-services - AWS Cognito/Amplify - 将新用户注册自动添加到用户组

permissions - 将角色声明作为权限的推荐最佳实践

c# - 如何通过 C# 连接到 Azure D365 Odata

php - 我可以在现有 PHP 应用程序中实现 Azure AD 身份验证吗

android - Facebook 登录按钮在显示新 View 之前更改其在 'log out' 中的文本

Android:Facebook 登录按钮