firebase 如果用户删除他/她的Google帐户会发生什么?

xeufq47z  于 2023-05-01  发布在  Go
关注(0)|答案(1)|浏览(133)

我正在探索如何在我的React应用程序中使用Firebase身份验证。我包括谷歌作为登录提供商之一。当用户第一次使用他/她的google帐户登录时,我会在我的users集合中插入一个新的user文档(使用mongo DB),将其id设置为firebase用户对象中的uid
每当该用户登录时,我就使用uid字段从自己的数据库中检索相应的user文档。
如果用户删除了他的谷歌账户,他将永远无法在我的应用程序上找回他的账户信息,我说得对吗?似乎有点冒险。如果谷歌(或任何其他第三方提供商)以某种方式有一个政策,永久删除用户帐户时,这些用户也将永远无法检索他们存储在我的应用程序中的信息。我怎样才能防止这种情况的发生?

2izufjch

2izufjch1#

如您所知,Firebase身份验证支持多个身份验证提供程序。如果您只支持其中一个,那么如果用户最终删除或锁定其提供商的帐户,则肯定会面临用户无法访问其项目中的数据的风险。没有简单的方法可以从这种情况中恢复,需要在您的终端进行某种手动干预。
如果你想防止有人失去对你项目中数据的访问权,你应该允许他们使用同一个帐户使用多个身份验证提供程序。这涉及linking the provider to the existing Firebase account。来自文档:
通过将身份验证提供程序凭据链接到现有用户帐户,您可以允许用户使用多个身份验证提供程序登录到您的应用。用户可通过相同的Firebase用户ID进行标识,而不管他们用于登录的身份验证提供程序是什么。例如,使用密码登录的用户可以链接Google帐户,并在将来使用任一种方法登录。或者,匿名用户可以链接Facebook帐户,然后稍后登录Facebook以继续使用您的应用。
如果用户有多个链接提供商,那么他们可以使用其中任何一个登录到您的应用并使用相同Firebase用户ID访问他们的数据。您可以使用户能够使用您根据文档编写的应用程序代码链接任意数量的受支持提供程序。

相关问题