Firebase无法创建服务账号密钥:提示达上限但未创建任何密钥
无法创建服务账号密钥:提示上限为0(Google Workspace/新Firebase实例)
问题描述
使用Google Workspace管理员账号在新关联Workspace域名的账号及全新Firebase实例中创建服务账号密钥时,触发"已达上限"提示,但从未创建过任何密钥,实际上限显示为0。使用普通Gmail账号创建的Firebase项目无此问题。
需要该密钥用于Node.js程序开发,为已认证用户设置custom claims。创建密钥的操作步骤:
- 点击"Add key"下拉菜单,选择"Create new key"
- 选择JSON类型后点击"Create"
已尝试操作
- 检查组织约束页面,确认
disableServiceAccountCreation未被强制执行,但问题仍存在。
解决方案
1. 检查并修改组织级ServiceAccountKeyCreationLimit约束
这个约束控制每个服务账号可创建的密钥数量上限,可能被设置为0:
- 进入Google Cloud控制台,打开IAM & Admin > 组织政策
- 在搜索框输入
ServiceAccountKeyCreationLimit,找到对应的约束 - 查看当前设置:如果被设为0,点击"编辑",将数值修改为合理值(如10),保存更改
2. 检查项目级组织政策继承情况
部分项目可能会单独覆盖组织级政策,需确认对应Firebase项目关联的GCP项目:
- 进入该GCP项目的IAM & Admin > 组织政策
- 同样搜索
ServiceAccountKeyCreationLimit,确认项目未单独设置为0的上限
3. 验证服务账号状态
确认目标服务账号处于启用状态:
- 进入GCP项目的IAM & Admin > 服务账号
- 找到要创建密钥的服务账号,检查其状态是否为"启用"
内容的提问来源于stack exchange,提问作者Eric Wallen
相关产品推荐
相关产品推荐

