Firebase身份验证:如何处理使用他们不拥有的电子邮件地址的用户?

Firebase身份验证:如何处理使用他们不拥有的电子邮件地址的用户?,firebase,firebase-authentication,google-cloud-functions,Firebase,Firebase Authentication,Google Cloud Functions,情景: Bob使用电子邮件地址创建Firebase帐户alice@example.com他不是偶然或恶意拥有的 Bob创建了几个私有Firestore记录,例如链接到其用户ID的用户评论/消息,只有Bob才能读取和写入这些记录 Alice尝试注册并找到了她的电子邮件alice@example.com已经有人了。如果Alice没有访问Bob的Firestore记录的权限,Bob也没有访问她将继续创建的记录的权限,我们如何给Alice一个链接到她的电子邮件地址的用户帐户 一些想法: 您可以向Alic

情景:

Bob使用电子邮件地址创建Firebase帐户alice@example.com他不是偶然或恶意拥有的

Bob创建了几个私有Firestore记录,例如链接到其用户ID的用户评论/消息,只有Bob才能读取和写入这些记录

Alice尝试注册并找到了她的电子邮件alice@example.com已经有人了。如果Alice没有访问Bob的Firestore记录的权限,Bob也没有访问她将继续创建的记录的权限,我们如何给Alice一个链接到她的电子邮件地址的用户帐户

一些想法:

您可以向Alice发送密码重置电子邮件,该电子邮件将注销Bob,但Alice将看到Bob登录时创建的记录

您可以使用云功能1删除Bob未验证的电子邮件用户或更改其电子邮件地址2使用电子邮件地址验证标志为Alice创建新用户并发送密码重置电子邮件


有更简单的方法吗?

您可以使用一个或多个!使用Firebase的身份验证机制来帮助确定所有权

您可以使用第三方auth FB、Google、Twitter和Github来帮助澄清电子邮件地址的所有权。最简单,国际海事组织

您可以通过firebase.auth.currentUser.sendEmailVerification验证用户的电子邮件地址

您可以使用电子邮件链接进行注册:

从他们的文档中:

通过电子邮件登录有许多好处:

验证用户身份的能力,同时验证用户是否是电子邮件地址的合法所有者。
谢谢,但你还没有提到这是如何解决上述Bob/Alice场景的,Bob使用虚假电子邮件创建了记录,这是问题的核心。对不起,我认为这一建议是隐含的,但我在写这篇文章时并没有清楚地说明我睡着了,这是为了确保在用户验证其电子邮件地址之前无法写入记录。这无疑是你网站/应用程序中的一个障碍,但似乎会给你带来想要的结果。