0

我正在努力为服务帐户提供通过 Firebase SDK 充分使用身份平台所需的权限,包括以编程方式管理租户。

根据文档,它需要以下权限:

  • google.cloud.identitytoolkit.v1.AccountManagementService
  • google.cloud.identitytoolkit.v1.AuthenticationService
  • google.cloud.identitytoolkit.admin.v2.ProjectConfigService
  • google.cloud.identitytoolkit.admin.v2.TenantManagementService

不幸的是,我在 IAM 中找不到它们中的任何一个。我已经尝试过所有 Identity Platform / Firebase / Firebase Authentication / Identity Toolkit 权限,但每次我得到“权限被拒绝”。

角色/权限的实际名称是什么?

更新 正如@xBurnsed 给出的提示,这似乎是“身份平台管理员”的角色。

如果我直接将所需的角色“身份平台管理员”分配给服务帐户,它就可以工作。但是,如果我创建一个自己的角色,据我的理解,请看截图 - 接管角色“身份平台管理员”的所有权限,并将其分配给服务帐户,它不起作用 - 反馈是:

{
  "error": {
    "code": 403,
    "message": "The caller does not have permission",
    "status": "PERMISSION_DENIED"
  }
}

在此处输入图像描述

谁能解释一下?

4

1 回答 1

1

您混淆了角色、权限和服务。预定义角色包含一组权限。您始终可以创建自定义角色来设置特定权限。某些服务需要使用某些角色。

就您而言,您发布的列表

google.cloud.identitytoolkit.v1.AccountManagementService
google.cloud.identitytoolkit.v1.AuthenticationService
google.cloud.identitytoolkit.admin.v2.ProjectConfigService
google.cloud.identitytoolkit.admin.v2.TenantManagementService

指服务。为了能够使用这些,将 Identity Platform Admin 角色授予您的服务帐户应该可以解决问题。

于 2021-11-08T09:10:06.673 回答