【问题标题】:Firebase auth: update lost phone numberFirebase 身份验证:更新丢失的电话号码
【发布时间】:2020-11-23 09:57:54
【问题描述】:

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

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

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

【问题讨论】:

    标签: firebase firebase-authentication


    【解决方案1】:

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

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

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

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

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

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

    【讨论】:

      【解决方案2】:

      Firebase 有一种手机身份验证方法

      对于安卓:https://firebase.google.com/docs/auth/android/phone-auth?authuser=0#send-a-verification-code-to-the-users-phone

      对于网络:https://firebase.google.com/docs/auth/web/phone-auth#send-a-verification-code-to-the-users-phone

      IOS:https://firebase.google.com/docs/auth/ios/phone-auth?authuser=0#send-a-verification-code-to-the-users-phone

      编辑

      更改用户电话号码的方法如下

      PhoneAuthCredential credential = PhoneAuthProvider.getCredential(verificationId, code);
      FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
          user.updatePhoneNumber(credentials)
                  .addOnCompleteListener(new OnCompleteListener<Void>() {
                      @Override
                      public void onComplete(@NonNull Task<Void> task) {
                          if (task.isSuccessful()) {
      
                          }
                      }
                  });
      

      问题是您需要向用户的旧电话号码(以上链接)发送验证码以创建 PhoneAuthCredential (reference)。

      我不知道使用 firebase 的方法

      【讨论】:

      • 这并不能以任何方式回答我的问题。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-11
      • 2020-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-17
      • 1970-01-01
      相关资源
      最近更新 更多