缺少“billingAccounts/XXXXXXXXXXXXXXXXXXXXXXXX”的权限:billing.resourceAssociations.create Terraform (GCP)

Posted

技术标签:

【中文标题】缺少“billingAccounts/XXXXXXXXXXXXXXXXXXXXXXXX”的权限:billing.resourceAssociations.create Terraform (GCP)【英文标题】:missing permission on "billingAccounts/XXXXXXXXXXXXXXXXXXXXXXXX": billing.resourceAssociations.create Terraform (GCP) 【发布时间】:2020-07-18 02:06:58 【问题描述】:

我尝试使用 Terraform 在 GCP 上自动创建共享 VPC。我已启用对我的服务帐户的所有访问权限(组织管理员、XpnAdmin、存储管理员、计算管理员、计费管理员)

但是当我执行 terraform apply 时,它会抛出以下错误:

缺少对“billingAccounts/CXXXXXXXXXXXXXXXXXX”的权限:billing.resourceAssociations.create

我指的是 Google 提供商 Github code 进行此演示。

【问题讨论】:

Billing Account Administrator 具有所需的权限。这意味着您与 Terraform 一起使用的服务帐户不具有角色 roles/billing.admin 我遇到了同样的问题,我有结算管理员权限。 嘿@john Hanley 感谢您的评论,是的,在我解决了计费管理员访问问题后。非常感谢。愿上帝保佑你:) 【参考方案1】:

您很可能拥有计费管理员,但您还需要能够创建计费分配或“计费项目经理”。

https://cloud.google.com/billing/v1/how-tos/access-control

billing.resourceAssociations.create AND resourcemanager.projects.createBillingAssignment 在 Cloud Billing 帐号上。

有一些方便的代码可以引导服务帐户 - Google Project Factory - 你可能想看看。一旦创建了 SA,您就不应该有权限问题

【讨论】:

感谢您的回答,现在我通过启用计费管理员访问我的 SA 解决了这个问题。愿上帝保佑你:) @Ravi k 我有同样的错误,你能解释一下你是如何解决这个问题的吗?我应该如何为我已经存在的 SA 启用计费管理员?【参考方案2】:

即使我的“服务帐户”拥有必要的“组织”级别权限,我也遇到了同样的错误。然后我想通了,我需要从“计费帐户”中获得许可。它奏效了。

我按照this 教程通过“服务帐户”和“Terraform”创建项目,但仍然出现错误。经过一番研究,我遵循了this how-to 并获得了“计费帐户”的许可。

ProjectOrganizationBilling 是 3 个独立的权限组件。仅提供“组织”级别是不够的。也应从“结算帐户”授予权限。

【讨论】:

以上是关于缺少“billingAccounts/XXXXXXXXXXXXXXXXXXXXXXXX”的权限:billing.resourceAssociations.create Terraform (GCP)的主要内容,如果未能解决你的问题,请参考以下文章

调用支付jsapi 缺少参数appid

缺少 RapidAPI 应用程序密钥(不缺少)

调用jsapi缺少参数$key0$

SQL 错误:ORA-00907:缺少右括号 00907。00000 -“缺少右括号”

Kotlin 的列表缺少“添加”、“删除”、地图缺少“放置”等?

PLSQL Developer登陆的时候缺少一个选择连接为的选择框