【问题标题】:GCP IAM: Binding role to Service Account failsGCP IAM:将角色绑定到服务帐户失败
【发布时间】:2019-09-24 18:48:39
【问题描述】:

我从 GCP 控制台创建了一个 ServiceAccount 和一个自定义角色。

但是,当尝试关联它们时,它会失败,如下所示:

gcloud projects add-iam-policy-binding my-project \
  --member serviceAccount:cloudrun-poc@my-project.iam.gserviceaccount.com \
  --role roles/MyCustomRole
ERROR: Policy modification failed. For a binding with condition, run "gcloud alpha iam policies lint-condition" to identify issues in condition.
ERROR: (gcloud.projects.add-iam-policy-binding) INVALID_ARGUMENT: Role roles/ClusterUpscaler is not supported for this resource.

有什么想法吗?

【问题讨论】:

    标签: google-cloud-platform google-iam


    【解决方案1】:

    在尝试分配之前,您可能必须先 create 角色 MyCustomRole。不知道它对角色 ClusterUpscaler 的抱怨是什么,但该项目中可能不存在集群......除了自定义角色通常具有类似的名称 projects/{project-id}/roles/{role-name}。它们也可以列出:

    gcloud iam list-grantable-roles //cloudresourcemanager.googleapis.com/projects/PROJECT_ID
    

    【讨论】:

    • ClusterUpscaler 是具有此权限的自定义角色:container.clusters.update。我正在尝试创建一个应该能够调用 gcloud container clusters update 命令的 CloudRun 服务。任何其他建议都非常受欢迎
    • 顺便说一句,当我使用您在上面发布的命令时,会列出角色
    • @pkaramol 自定义角色始终是每个项目的,您可能需要完全限定的名称来分配它(与预定义的角色相反,它们在全球范围内可用)。
    • 哇!就是这样!它只需要 fq 角色名称!这样一个误导性的错误信息......无论如何,我建议你相应地更新你的答案,以便我接受它。
    猜你喜欢
    • 2020-12-17
    • 1970-01-01
    • 1970-01-01
    • 2021-12-19
    • 2019-08-19
    • 2020-04-08
    • 2021-10-28
    • 1970-01-01
    • 2017-09-03
    相关资源
    最近更新 更多