You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在GCP Terraform中为组配置billing_project与user_project_override?

解决Terraform创建GCP Cloud Identity Group时的403错误与参数配置问题

核心问题定位

你遇到的参数不支持报错,是因为billing_project和user_project_override是Google Provider层级的配置项,不能直接添加到google_cloud_identity_group资源块中——这两个参数用来控制API调用的计费和权限上下文,而非资源本身的属性。

正确的Terraform配置方式

把这两个参数移到provider "google"块中,示例配置如下:

# Google Provider 配置块(核心参数在这里设置)
provider "google" {
  project               = "your-resource-project-id" # 可选,若资源无关联项目可留空
  billing_project       = "your-billing-project-id"   # 承担Cloud Identity API费用的项目ID
  user_project_override = true                        # 开启用户项目覆盖模式
}

# Cloud Identity Group 资源配置
resource "google_cloud_identity_group" "demo_group" {
  display_name = "demo-discussion-group"
  parent       = "customers/C0XXXXXXXX" # 替换为你的Cloud Identity租户ID(格式为customers/C0开头的字符串)
  group_key {
    id = "demo-group@your-domain.com"   # 组的邮箱地址
  }
  # 标签需根据组类型设置,这里是讨论组类型
  labels = {
    "cloudidentity.googleapis.com/groups.discussion_forum" = ""
  }
}
  • billing_project:指定支付Cloud Identity API调用费用的项目(因为Cloud Identity Group属于租户级资源,无直接关联的项目,需指定一个项目承担费用)
  • user_project_override = true:强制API调用使用billing_project的上下文,解决租户级资源的权限验证问题

权限补充检查

确保你的应用默认凭据(ADC)对应的账号拥有:

  • 在billing_project上的serviceusage.services.use权限(允许使用该项目的API配额)
  • 在Cloud Identity租户上的cloudidentity.groups.create权限(允许创建组)

可选:通过gcloud CLI配置ADC

如果本地ADC未正确配置,可通过以下命令设置:

# 用个人账号登录生成ADC凭据
gcloud auth application-default login

# 若使用服务账号,设置环境变量指定密钥文件路径
export GOOGLE_APPLICATION_CREDENTIALS="/path/to/your/service-account-key.json"

内容的提问来源于stack exchange,提问作者Cosmay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 02:19:59