Terraform google_firebase_project资源gcloud用户认证报错403问题问询
问题根因
这个403错误由两个原因叠加导致:
- Firebase管理API默认不支持直接使用gcloud登录的个人终端用户凭证发起请求,要求请求必须绑定指定的配额项目
- 当前请求关联的配额项目没有开启Firebase管理API,对应报错信息里的
SERVICE_DISABLED标识
解决方案(无需配置服务账号环境变量)
你可以根据使用场景选择以下任意一种方案:
方案1:全局配置gcloud应用默认凭证的配额项目
适合单项目开发、需要全局生效的场景:
- 先为目标项目开启Firebase管理API,执行命令:
gcloud services enable firebase.googleapis.com --project <你的目标项目ID>
- 配置gcloud应用默认凭证的配额项目,执行命令:
gcloud auth application-default set-quota-project <你的目标项目ID>
切换项目时只需要重新执行上述两条命令替换项目ID即可,无需修改环境变量。
方案2:在Terraform Google Provider中配置配额项目
适合多环境切换、不想修改全局gcloud配置的场景:
直接在Terraform的Google Provider配置块中添加quota_project参数,指定对应环境的项目ID即可:
provider "google" { region = "你的项目默认区域" quota_project = "<你的目标项目ID>" # 其余原有配置保持不变 }
不同环境的配置可以单独指定对应项目ID,无需修改本地任何全局配置。
验证
配置完成后重新执行terraform plan即可正常返回执行计划,不会再触发该403错误。
内容的提问来源于stack exchange,提问作者galah92
相关产品推荐
相关产品推荐

