【问题标题】:What are my privileges in a given GCP project?我在给定 GCP 项目中的权限是什么?
【发布时间】:2018-03-21 08:30:45
【问题描述】:

我的用户可以通过多种方式获得 Google Cloud Platform 项目的权限。直接角色和权限分配,充当服务帐户,不同的组成员。

那么给定一个 GCP 项目,我如何列出我的用户的活动权限?

【问题讨论】:

    标签: google-cloud-platform google-cloud-iam


    【解决方案1】:

    通常,在 GCP 中,它们被称为“Permissions”。为了便于使用,这些权限被分组在“角色”中。

    每个用户在您的项目中可以有不同的角色。要获取在项目中具有每个角色的帐户的完整列表,您可以使用 Resource Manager APIget the IAM policies

    长话短说,确保 gcurl 已正确配置并运行以下命令,根据您的需要过滤输出:

    curl -XPOST https://cloudresourcemanager.googleapis.com/v1/projects/$(gcloud config get-value project):getIamPolicy -d'{}' -H"Authorization: Bearer $(gcloud auth print-access-token)" -H'content-type:application/json'
    

    【讨论】:

    • 是的,但它不能解决原始用例。假设我想知道我的用户是否有bigquery.table.update。我可以通过充当某个服务帐户的行为来传递它,而且我可能不知道我所属的所有组。我找不到只列出我的用户拥有的权限的方法。
    • 如果知道要检查的权限,可以调用同一个API的testIamPermission。您必须启用正确的 oauth 流(三足 oauth)才能以最终用户的身份正确调用此端点。
    • 更简单:gcloud projects get-iam-policy MY_PROJECT stackoverflow.com/a/44749561/1778702
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-09-05
    • 2011-01-06
    • 2019-01-01
    • 2013-04-03
    • 2021-01-03
    • 2018-05-24
    • 1970-01-01
    相关资源
    最近更新 更多