You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查看GCP中所有用户的角色与权限(含数据集级权限用户)

查看Google Cloud全层级IAM权限(含数据集/表级别)

你已经知道可以通过以下命令查看项目级别的所有用户及其角色:

  • gcloud projects get-iam-policy <project-id>
  • gcloud projects get-ancestors-iam-policy <project-id>

但这类命令无法覆盖仅拥有数据集或表级别权限的用户。要查看全范围的权限(包括项目、数据集、表各层级),可以按以下方式操作:

1. 查看数据集级别权限

使用BigQuery命令行工具bq查看指定数据集的IAM策略:

# 查看简洁的权限列表
bq show --format=prettyjson <project-id>:<dataset-id> | jq '.access'

# 获取完整的IAM政策详情
bq get-iam-policy <project-id>:<dataset-id>

2. 查看表级别权限

针对单个表,执行以下命令:

# 查看简洁的权限列表
bq show --format=prettyjson <project-id>:<dataset-id>.<table-id> | jq '.access'

# 获取完整的IAM政策详情
bq get-iam-policy <project-id>:<dataset-id>.<table-id>

3. 批量遍历所有数据集和表

如果要一次性获取项目下所有数据集和表的权限,可结合shell脚本批量处理:

# 遍历当前项目下所有数据集
for dataset in $(bq ls --format=csv | awk -F ',' 'NR>1 {print $1}'); do
  echo "=== 数据集 ${dataset} 的权限信息 ==="
  bq get-iam-policy ${dataset}
  
  # 遍历当前数据集下所有表
  for table in $(bq ls --format=csv ${dataset} | awk -F ',' 'NR>1 {print $1}'); do
    echo "--- 表 ${dataset}.${table} 的权限信息 ---"
    bq get-iam-policy ${dataset}.${table}
  done
done

4. 通过Cloud Console可视化查看

如果偏好图形界面,可直接在Google Cloud控制台操作:

  • 进入BigQuery控制台,定位到目标数据集或表
  • 点击数据集/表名称右侧的分享按钮
  • 在弹出的权限管理窗口中,查看所有拥有权限的用户、角色及对应的权限范围

内容的提问来源于stack exchange,提问作者Sander van den Oord

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 13:05:23