0

我将通过 GCP IAM 上的 Qwicklabs 教程。

在某些时候,它提到

使用 gcloud iam list-grantable-roles 命令返回可应用于给定资源的所有角色的列表。

但是,引用的示例通过遍历整个项目列出了可授予的角色:

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

有没有办法运行上述命令,但只能在特定资源上运行,比如说StackdriverBigQuery

4

1 回答 1

1

有没有办法运行上述命令,但只能在特定资源上运行,比如 Stackdriver 或 BigQuery ?

是的。从以下示例中,您应该注意到一种命名模式。

这个链接是谷歌关于资源命名的文档。

如果你想比项目更深入,那么你必须指定一个实际的资源。您不能只指定 BigQuery,您必须在 BigQuery 中指定数据集。对于 Stackdriver,您必须指定实际的日志名称。

对于某些资源,gcloud 提供了命令行选项--uri。这将显示资源名称:

gcloud compute instances list --uri

注意:--uri并非所有命令都支持命令行选项。既不记录也不支持 Biquery --uri

计算引擎:

gcloud iam list-grantable-roles //compute.googleapis.com/projects/[PROJECT_ID]/zones/[ZONE]/instances/[VM_NAME]

大查询:

gcloud iam list-grantable-roles //bigquery.googleapis.com/projects/[PROJECT_ID]/datasets/[DATASET_ID]

Stackdriver 日志记录:

gcloud iam list-grantable-roles //logging.googleapis.com/projects/[PROJECT_ID]/logs/cloudbuild
于 2019-06-01T20:21:34.440 回答