【问题标题】:Disable many users at once一次禁用多个用户
【发布时间】:2018-11-18 16:26:41
【问题描述】:

我们在多租户设置中使用Firebase Authentication。在某些情况下,我们希望禁用一个租户的所有用户(试用已结束,订阅未续订......)或启用所有以前禁用的用户。我们为每个必须启用/禁用的用户发送UpdateRequest

虽然我们按顺序发送请求(每个租户一次只发送一个,同时禁用的租户不多),但我们多次遇到配额超出错误:

{
    "error": {
        "errors": [
            {
                "domain": "global",
                "reason": "invalid",
                "message": "QUOTA_EXCEEDED : Exceeded quota for updating account information."
            }
        ],
        "code": 400,
        "message": "QUOTA_EXCEEDED : Exceeded quota for updating account information."
    }
}

有没有办法使用 Admin SDK 为多个用户进行批量更新?我们目前在 Java 中使用它,但 NodeJS 也可以为我们工作。或者,如果有另一种禁用多个用户的方法,例如在用户属性上使用表达式过滤器。

【问题讨论】:

  • 您究竟在使用 Firebase 身份验证做什么?
  • @AndréKool 来验证我们的用户。我们目前在内部用户数据库中使用自定义令牌和 JWT,并希望将所有平台迁移到直接使用 Firebase 身份验证。
  • 文档中的 this page 似乎列出了 Firebase 的所有云功能配额。我认为这些甚至适用于向 Firebase 的 auth 部分写入/更新请求。我可以看到您触发了两个限制...要么是:API calls (INVOKE) Calls to the "call" API 16 per 100 seconds,要么甚至是:API calls (WRITE) Calls to deploy or delete functions via the Cloud Functions API 80 per 100 seconds... 在该页面的末尾,它描述了如何编辑这些配额。你有没有尝试过这些?
  • 根据您使用它的目的,可能可以使用firebase security rules 来启用/禁用对您的数据的访问。
  • @JeremyW 谢谢你的建议。我们没有使用云功能。管理 SDK 是从在计算实例上运行的环境触发的。这些身份验证限制 (firebase.google.com/docs/auth/limits) 不显示任何内容。

标签: firebase firebase-authentication firebase-admin


【解决方案1】:

没有用于使用 Firebase Admin SDK 更新用户的批量操作。请随时 file a feature request 描述您的用例。

【讨论】:

  • 后续问题:firebase.google.com/docs/auth/limits 中没有启用/禁用用户,错误消息并没有真正指出这里使用的是哪个 API(“更新帐户信息”),我没有看到任何项目配额页面上达到的限制 (console.cloud.google.com/iam-admin/quotas)。我可以在某处要求提高配额吗?应该提高哪个配额?
  • 抱歉,我不明白您遇到的问题。请在此处提出关于 SO 的新问题,并提供详细信息以帮助理解问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-02-03
  • 1970-01-01
  • 2020-12-21
  • 1970-01-01
  • 1970-01-01
  • 2021-10-23
  • 1970-01-01
相关资源
最近更新 更多