Google cloud platform 如何使用部署管理器为服务帐户分配角色
创建服务帐户并为其分配角色时遇到一些问题。最初我是基于代码的,但是我无法让它工作,因为虽然它确实创建了服务帐户,但没有为它分配角色。所以我环顾了一下stackoverflow,找到了哪个有效 下面粘贴的是负责创建不起作用的服务帐户的Jinja文件的内容。我希望它做的是创建一个服务帐户,然后为其分配pubsub.editor和dataflow.developer角色 我不明白为什么下面的代码不起作用,所以我希望有人能解释一下它到底出了什么问题Google cloud platform 如何使用部署管理器为服务帐户分配角色,google-cloud-platform,google-iam,google-deployment-manager,Google Cloud Platform,Google Iam,Google Deployment Manager,创建服务帐户并为其分配角色时遇到一些问题。最初我是基于代码的,但是我无法让它工作,因为虽然它确实创建了服务帐户,但没有为它分配角色。所以我环顾了一下stackoverflow,找到了哪个有效 下面粘贴的是负责创建不起作用的服务帐户的Jinja文件的内容。我希望它做的是创建一个服务帐户,然后为其分配pubsub.editor和dataflow.developer角色 我不明白为什么下面的代码不起作用,所以我希望有人能解释一下它到底出了什么问题 {# Service account creation
{# Service account creation #}
resources:
- type: gcp-types/iam-v1:projects.serviceAccounts
name: {{ env['name'] }}
properties:
accountId: {{ env['name'] }}
displayName: serviceAccount-{{ env['name'] }}
accessControl:
gcpIamPolicy:
bindings:
- role: roles/dataflow.developer
members:
- "serviceAccount:myaccount-sa@myproject.iam.gserviceaccount.com"
- role: roles/pubsub.editor
members:
- "serviceAccount:myaccount-sa@myproject.iam.gserviceaccount.com"
您是否在中尝试了示例模板?请尝试相同的模板。部署后,您在部署控制台中看到了什么错误?此外,请确保您的部署管理器具有设置IAM策略的权限;你可以遵循。我已经遵循了你提到的模板,这个模板很有效。在我的原始问题中使用代码确实会创建服务帐户,但不会为其分配任何角色。很遗憾,它不会产生任何错误。请检查部署管理器。相应的服务帐户应该具有适当的角色来完成您的任务。cloudservices.gserviceaccount.com是该项目的所有者,因此这应该可以。我用来部署部署的帐户也被设置为项目的所有者,因此这也不是问题所在。我不明白的是,在您说它可以工作的情况下,他们使用以下语法“…gcpIamPolicyPatch:…add:…”,但是您的语法不同。请使用相同的结构,让我们看看这是否有帮助。