首页 文章

Firebase Auth(android)电子邮件验证需要一些建议

提问于
浏览
1

用电子邮件和密码创建用户后,我打电话给 #sendEmailVerification() . 我所知道的是,Firebase首先使用电子邮件和密码创建用户,然后向该用户发送验证邮件 .

如果用户可以访问该邮件ID并验证发送 user.isEmailVerified = true 的邮件,则此工作正常 .

但是,如果用户无法验证邮件或他/她无法访问提供的邮件,则电子邮件ID将被锁定,因为该帐户是使用该电子邮件ID创建的 .

我的问题是当用户无法验证电子邮件时该怎么办?

1 回答

  • 1

    如果您记录用户在Firebase数据库中注册的事实,则可以使用Admin SDK定期清除未经验证的电子邮件地址的用户 .

    https://firebase.google.com/docs/auth/admin/manage-users#delete_a_user

    admin.auth().getUser(uid)
      .then(function(userRecord) {
        if (!userRecord.emailVerified) {
          admin.auth().deleteUser(uid)
            .then(function() {
              console.log("Successfully deleted user");
            })
            .catch(function(error) {
              console.log("Error deleting user:", error);
            });
        }
      })
      .catch(function(error) {
        console.log("Error fetching user data:", error);
      });
    

相关问题