如何使用服务帐户在 gcp 中设置正确的 iam 策略
Posted
技术标签:
【中文标题】如何使用服务帐户在 gcp 中设置正确的 iam 策略【英文标题】:How can i set right iam policy in gcp with an service account 【发布时间】:2017-06-29 13:42:37 【问题描述】:我在 dns API(可能是其他 api 条目)上的 GCP iam 策略跨项目有问题。 对于 gcp 管理,我使用 gcloud 命令和 terraform。
检查我的设置: 第一个 gcp 项目:myproject-cloud。此项目托管一个 dns 托管区域。
具有帐户服务的第二个项目 (akecld-test-demo)。此帐户与 terraform 一起用于创建实例、磁盘等...没问题。我使用 gcloud 来确认 dns api 的错误设置。
当我想在 dns 区域中添加(或列出)一个条目(在第一个项目中设置并保留)时,我遇到 403 错误。
gcloud --account=provisioner@akecld-test-demo.iam.gserviceaccount.com dns managed-zones list --project=myproject-cloud
API [dns.googleapis.com] not enabled on project [xxxxxxxxx]....
dns api 适用于在第一个项目中创建的服务帐户,但不适用于其他项目中托管的服务帐户。
我已添加 iam 政策:
gcloud projects add-iam-policy-binding myproject-cloud --member="serviceAccount:provisioner@akecld-test-demo.iam.gserviceaccount.com" --role="roles/dns.admin"
我找不到要添加的正确角色或策略..
【问题讨论】:
仅供参考:您需要在第二个项目中启用 DNS API,而不仅仅是第一个...现在可以使用了!! 【参考方案1】:您需要在第二个项目中启用 DNS API,而不仅仅是第一个... 现在可以了!!
【讨论】:
以上是关于如何使用服务帐户在 gcp 中设置正确的 iam 策略的主要内容,如果未能解决你的问题,请参考以下文章