使用terraform在gcp中创建后端时出现以下错误。
加载状态时出错:无法打开位于以下位置的状态文件://tf state demo/demo-terraform.state/default.tfstate:googleapi:获取HTTP响应代码403,正文:AccessDenied
AccessDenied.service帐户没有storage.objects.get对Google云存储对象的访问权限。
我已经将完整的存储管理员角色赋予了用于创建bucket的服务帐户。
这是环境配置的问题。Terraform使用应用程序默认凭据(ADC(,因此您需要创建与服务帐户密钥文件的绝对路径相等的环境变量GOOGLE_APPLICATION_CREDENTIALS
。
如果您想避免使用服务帐户密钥文件(出于安全原因,您有权(,您可以通过执行gcloud auth application-default login
来使用自己的凭据
注意:环境变量的优先级高于任何其他ADC模式