google-cloud-platform - gcloud 对 add-iam-policy-binding 的混淆

标签 google-cloud-platform gcloud

遵循 gcloud 文档

gcloud iam 服务帐户
将 IAM 策略绑定(bind)添加到 IAM 服务帐号
https://cloud.google.com/sdk/gcloud/reference/iam/service-accounts/add-iam-policy-binding
示例部分
要将“roles/editor”角色的 IAM 策略绑定(bind)添加到服务账户“test-proj1@example.domain.com”,请运行:

gcloud iam service-accounts add-iam-policy-binding \
 test-proj1@example.domain.com \
 --member='serviceAccount:test-proj1@example.domain.com' \
 --role='roles/editor'

gcloud 项目 add-iam-policy-binding
添加 IAM 策略绑定(bind) 对于一个项目
https://cloud.google.com/sdk/gcloud/reference/projects/add-iam-policy-binding
示例部分
要将“roles/editor”角色的 IAM 策略绑定(bind)添加到服务账户“test-proj1@example.domain.com”,请运行:
gcloud projects add-iam-policy-binding \
 test-proj1@example.domain.com \
 --member='serviceAccount:test-proj1@example.domain.com' \
 --role='roles/editor'

gcloud 组织 add-iam-policy-binding
添加 IAM 策略绑定(bind) 为组织
https://cloud.google.com/sdk/gcloud/reference/organizations/add-iam-policy-binding
示例部分
要将“roles/editor”角色的 IAM 策略绑定(bind)添加到服务账户“test-proj1@example.domain.com”,请运行:
gcloud organizations add-iam-policy-binding \
 test-proj1@example.domain.com \
 --member='serviceAccount:test-proj1@example.domain.com' \
 --role='roles/editor'

有谁知道这三个命令是否实际上相同?
在此先感谢您的帮助。
乔纳森。

最佳答案

你必须像这样阅读命令

gcloud <resourceType> add-iam-policy-binding <resourceName> --member=<accountToGrantOnTheResource> --role=<roleToGrantOnTheResource>
困惑来自服务帐户的二元性(我保证,没有量子的东西!)。服务帐户可以是身份和资源。
您可以授予某人成为服务帐户的编辑者,而另一个人成为该服务帐户的查看者->您的第一个示例,您授予服务帐户自己的编辑者。例如,它将能够更新自己的描述。
在您的另外两个示例中,您授予您的服务帐户(作为身份)作为资源项目(项目的所有资源,服务帐户本身,如果它属于该项目)和组织的编辑。

关于google-cloud-platform - gcloud 对 add-iam-policy-binding 的混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61875357/

相关文章:

kubernetes - 您如何像 EC​​S 服务一样将服务帐户附加到 gke 部署/服务?

ssl - 在 GCE/GKE 上启用 HTTPS

google-cloud-platform - 坚持将 GCP 项目转移到组织

google-app-engine - Kubernetes gcloud 容器引擎获取凭据错误

python - 如何从 python 脚本成功调用 gsutil rsync?

google-cloud-platform - 如何使用 CLI 将 SSH key 添加到 Google Cloud

google-app-engine - 如何转让 Google Cloud 项目所有权?

docker - Google Container Registry 的 gcloud API 是什么

gcloud 'no such file or directory'

google-cloud-platform - 在Apple Silicon/Big Sur上安装Google Cloud SDK时出现anthoscli错误