[英]Firebase authentication with multple providers
我正在尝试创建一个用户身份验证屏幕,所以我决定使用 Firebase。
但是,我面临一个问题。 现在我启用了 2 个提供程序,它们是:
1- E-mail/Password
2- Google
我可以完美地创建用户。
当我使用E-mail/password
选项创建用户并使用 Gmail 地址guilherme.nunes@fover.com.br
时, Firebase 会正常创建用户。
使用 email 后,我尝试使用Google
提供商的第二个选项,使用相同的 email。 现在老用户被替换为 Firebase 中的新提供者。
在此之后,如果我再次尝试使用第一个选项(电子邮件/密码)登录,则表示该用户不存在。
我尝试禁用每个帐户拥有 1 个用户的选项,但随后 Firebase 创建了 2 个不同的用户。
我想要的是与多个提供商链接 1 个帐户。
有人能帮助我吗?
当您启用选项以仅允许每个 email 地址的单个帐户时,Firebase 具有某些提供程序,这些提供程序是某些 email 域的首选。 最值得注意的是:Google 提供商是@gmail.com
地址的首选提供商。
因此,在您的初始过程中,您:
something@gmail.com
。something@gmail.com
。在这种情况下,第二次注册会替换/覆盖初始帐户。
您要做的是链接两个帐户/提供者,如帐户链接文档中所述。 使用这种方法,您无需在步骤 2 中完全注册帐户,而是将第二个帐户的凭据链接到已为用户创建的电子邮件+密码帐户。
该文档对如何执行此操作进行了分步说明。 如果您在完成这项工作时遇到问题,请使用最小的、完整/独立的代码发布一个新问题,该代码可以重现您遇到的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.