首页 > 解决方案 > Firebase 身份验证:更新丢失的电话号码

问题描述

当用户丢失了他们的电话号码,并且他们想用新的电话号码更新他们的帐户时,最好的方法是什么?我们已经有了他们的电子邮件。

问题是 Firebase 需要在更新之前向旧电话号码发送短信,而用户已经丢失了旧电话号码。

到目前为止,我最好的想法是使用他们的电子邮件对他们进行身份验证,然后使用他们输入的新电话号码向我们的后端发送请求,然后使用 Firebase Admin SDK 更新用户的电话号码。这里只有一个问题:我将如何验证这个新电话号码,以确保用户不只是添加一些随机号码?

标签: firebasefirebase-authentication

解决方案


我正在用我遵循的路径回答我自己的问题:

首先,我们获取他们的电子邮件并发送一封验证电子邮件,其中包含一个按钮,该按钮重定向到一个包含我们在后端使用的令牌的深层链接,以验证用户确实是他们声称的那个人。

用户单击链接后,我们会在应用程序上显示一个屏幕,要求输入新的电话号码。

输入新电话号码后,我们将其与深层链接上的令牌一起发送到我们的后端。我们验证令牌,然后使用 Twilio 向这个新号码发送验证短信。

同时,用户已经被发送到验证码屏幕。他们收到 Twilio SMS 并输入代码。我们将此代码发送到我们的后端,并确保他们输入的代码是正确的。

如果代码正确,我们会使用 Firebase Admin API 将此用户的电话号码更新为新号码。


推荐阅读