首页 文章

Firebase用户在登录时合并身份验证提供程序

提问于
浏览
2

在我的Angular 2应用程序中,我希望允许用户通过电子邮件/密码,Google和Facebook提供商进行连接 .

首次登录时,我了解在firebase数据库中创建了一个用户条目 . 例如 facebook:UUID . 如果用户使用其他提供程序登录,我了解firebase将阻止此操作,尤其是如果电子邮件已被使用且已在规则中设置为唯一 .

所以我的问题是: how can we AUTOMATICALLY, being transparent for user, merge the data if we detect the email is the same for example .

在诸如udemy或其他大公司这样的优秀网站上,我们可以使用多种方法进行授权 . 我尝试使用Facebook和Google登录(两者都使用相同的电子邮件),他们会自动将我重定向到我的独特 Profiles ,而无需我方的任何操作来确认我想将我的帐户与其他提供商关联 .

如何在Firebase中实现这一目标? Do we have to replicate data 并制作我们自己的"user data gathering"?

1 回答

  • 2

    当用户登录Firebase身份验证时,Firebase数据库中不会自动创建任何条目 . 如果您的应用创建了此类条目,则您可以使用代码执行此操作 . 这很常见,但不是自动的 .

    如果你're looking to allow the users to sign in to the same account with any supported provider, you'正在寻找帐户链接 . 它记录在这里:https://firebase.google.com/docs/auth/web/account-linking

相关问题