我想使用 Terraform 来创建 Firebase 项目。
根据 GCP Terraform Provider 文档,我创建了一些 Terraform 模块,但 Terraform apply 调用失败了
错误403:调用者没有权限
Terraform 服务帐户需要什么权限才能管理 Firebase 项目?
我想使用 Terraform 服务帐户创建以下资源:
以下步骤可以帮助您解决错误 403:调用者没有权限:
您缺少向 Terraform 提供服务帐户授权 这是错误消息的来源,你需要给出这个 许可:
resourcemanager.projects.getIamPolicy
使用以下命令列出分配给服务帐户的角色:
gcloud projects get-iam-policy <YOUR GCLOUD PROJECT ID> \ --flatten="bindings[].members" \ --format='table(bindings.role)' \ --filter="bindings.members:<YOUR SERVICE ACCOUNT>"
使用以下命令列出角色包含的权限:
gcloud iam roles describe roles/resourcemanager.projectIamAdmin
使用下面的方法将所需的角色添加到服务帐户:
gcloud projects add-iam-policy-binding <YOUR GCLOUD PROJECT ID> \ --member=serviceAccount:<YOUR SERVICE ACCOUNT> \ --role=roles/resourcemanager.projectIamAdmin
请参阅此 IAM 策略服务帐户 terraform 文档 了解更多信息。 当您需要创建其他资源时,在上述文档中,单击相应模块的右侧以获取更多信息。
谷歌提供了新资源,可以使用 terraform 创建 firebase 项目。
分步教程(代码实验室): https://firebase.google.com/codelabs/firebase-terraform
Youtube教程: https://www.youtube.com/watch?v=32SKh-jGXI4
firebase 文档: https://firebase.google.com/docs/projects/terraform/get-started