javascript - 如何防止新用户在 Firebase 上注册?

标签 javascript firebase firebase-authentication google-cloud-functions

在我为特定用户注册后,有什么方法可以阻止更多用户在 Firebase 上注册吗?例如,如果我只希望注册 10 个特定用户而不想更多,是否有办法关闭 future 的注册?

最佳答案

经过一些挖掘,即使文档中没有正式列出此方法,我发现您可以自动删除使用 Cloud Functions 和管理 SDK 注册后创建的任何新用户。这是我在新用户尝试注册时用来删除他们的代码:

  exports.deleteNewUser = functions.auth.user().onCreate((event) => {
  const uid = event.data.uid; // The Firebase user.
  admin.auth().deleteUser(uid)
    .then(function() {
      console.log("Successfully deleted user");
    })
    .catch(function(error) {
      console.log("Error deleting user:", error);
    });
  });

更新:Firebase 也引入了撤销 token API。这一点很重要的原因是,当用户注册时,即使他们被立即删除,他们也会获得一个有效的 token ,该 token 至少可以保持几分钟的身份验证,如果不是更长时间的话。考虑在删除后立即撤销用户 token ,方法是:

admin.auth().revokeRefreshTokens(uid)
  .then(() => {
    return admin.auth().getUser(uid);
})

关于javascript - 如何防止新用户在 Firebase 上注册?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49162111/

相关文章:

javascript - React 尝试访问错误路径的文件

flutter - flutter 中的 Firebase 电话身份验证

ios - 带电子邮件密码的 FirebaseUI/Auth

javascript - 如何根据是否存在另一个 CSS 类组合来更改 CSS 类?

javascript - 如何在php中获取动态创建的选择下拉列表的值

javascript - 为什么我的服务器没有收到任何内容?

ios - Testflight 中 iOS 的 Firebase 通知问题

android - Firebase 崩溃报告电子邮件

java - Firestore ui 适配器错误 java.lang.NullPointerException : 'void com. firebase.ui.firestore.FirestoreRecyclerAdapter.startListening()

flutter - 在 iOS 上退出 Google 登录后无法在 Flutter Firebase flutter fire 中使用