GCP:使用 gcloud CLI 列出组织中所有群组的成员,输出到 BigQuery

sop*_*les 5 google-cloud-platform gcloud google-cloud-iam google-cloud-asset-inventory

我想使用 gcloud CLI 创建一个包含我们组织中 Google IAM 组中所有用户的表,并输出到 BQ 表。

我知道它涉及“gcloud 身份组成员资格列表”,但不清楚如何迭代组并生成 CSV 形式的输出。

我已经找到了一种迭代项目并获取每个项目的 iam 绑定的方法 - https://rajathithanrajasekar.medium.com/google-cloud-iam-users-extraction-across-all-projects-in-a-gcp -org-2fbe66ddc045因此,我只需要组成员身份信息,而不是策略/绑定信息。

更新以澄清: 我们的用户被分配到组织级别的 IAM 组 ( https://console.cloud.google.com/iam-admin/groups )。我希望在 BigQuery 中生成这些成员资格的列表,这样我们就不必在其中寻找可能找到用户的位置。

团队管理权限没有 Google Workspace 管理员来查看用户的群组成员资格,因此我们正在寻找一种方法来提供此信息。

gui*_*ere 1

您只能检查 Google Cloud 中分配的群组。您无法从 Google Cloud 之外的群组获取数据。

您可以使用 Asset Iam 分析器获取一些数据,但无法在组织或文件夹级别执行此操作,您需要针对每个项目进行迭代。并执行文件夹和组织级别的专用请求

#For Organization
gcloud asset analyze-iam-policy --expand-groups \
  --output-group-edges --organization=<ORGANIZATION_NUMBER> \
  --show-response \
  --full-resource-name="//cloudresourcemanager.googleapis.com/organizations/<ORGANIZATION_NUMBER>"

#For Folder
gcloud asset analyze-iam-policy --expand-groups \
  --output-group-edges --organization=<ORGANIZATION_NUMBER> \
  --show-response \
  --full-resource-name="//cloudresourcemanager.googleapis.com/folders/<FOLDER_NUMBER>"

#For Project
gcloud asset analyze-iam-policy --expand-groups \
  --output-group-edges --organization=<ORGANIZATION_NUMBER> \
  --show-response \
  --full-resource-name="//cloudresourcemanager.googleapis.com/projects/<PROJECT_ID>" \
  --expand-resources                
Run Code Online (Sandbox Code Playgroud)

更多详细信息请参见此处