在创建服务帐户并为其分配角色时遇到了一些麻烦。最初,我的代码基于this example,但是我无法使其工作,因为尽管它确实创建了服务帐户,但并未为其分配角色。因此,我环顾了一下stackoverflow,发现this answer确实有效。
下面粘贴的是Jinja文件的内容,该文件负责创建无效的服务帐户。我期望它要做的是创建一个服务帐户,然后为其分配pubsub.editor和dataflow.developer角色。
我不明白为什么下面的代码不起作用,所以我希望有人可以解释一下这是怎么回事。
{# 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"