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

能否审计共享给外部用户的BigQuery数据集访问行为?

BigQuery跨项目共享数据集访问审计方案

完全可以实现全量访问审计,且不需要申请外部用户私有项目的任何权限,你作为数据集的持有方,在自己所属的宿主项目侧就能采集到所有需要的访问指标,核心依托Google Cloud原生的审计日志能力即可落地。

核心实现逻辑

很多人会误以为查询作业跑在外部用户的私有项目里,访问日志就会落到对方项目下,实际BigQuery的审计日志是跟着被访问的数据资源走的:只要查询请求访问了你项目下托管的BigQuery数据集,无论作业在哪个项目的上下文下运行,对应的访问审计日志都会自动落地到数据集所属的宿主项目的Cloud Logging存储中,不会出现日志缺失。

可采集的核心审计维度

  • 访问主体信息:提交查询的用户账号/服务账号ID、用户运行查询时绑定的外部项目ID、调用方IP、调用端工具标识
  • 资源访问明细:被访问的具体数据集、表/视图/物化视图的完整资源路径、是否通过通配符批量查询多张表、访问的是实时表数据还是历史快照
  • 行为属性:查询提交/完成时间、查询执行状态(成功/失败/权限拦截)、扫描的数据量、查询费用归属、完整SQL文本、是否触发数据导出操作

落地配置步骤

  1. 开启宿主项目的BigQuery数据访问审计日志
    进入宿主项目的IAM审计配置页,找到BigQuery服务,勾选「数据读取」「作业执行」类别的数据访问审计日志即可。默认配置下管理员操作类日志是自动开启的,但读表、执行查询这类普通数据访问日志需要手动开启。
  2. 配置日志长期存储链路
    建议在Cloud Logging中配置日志接收器,把BigQuery相关的审计日志同步导出到宿主项目内的专用BigQuery日志数据集,后续可以直接用SQL做统计分析,不需要反复调用日志接口。你可以根据自身审计要求设置日志表的保留周期,支持永久保留。
  3. 自定义统计分析
    导出到BigQuery的审计日志可以直接用SQL做聚合统计,以下是提取共享数据集表访问记录的基础查询示例:
SELECT
  timestamp,
  protopayload_auditlog.authenticationInfo.principalEmail AS access_account,
  resource.labels.project_id AS external_runtime_project_id,
  protopayload_auditlog.servicedata_v1_bigquery.jobStatistics.referencedTables AS accessed_tables,
  protopayload_auditlog.methodName AS operation_type,
  protopayload_auditlog.requestMetadata.callerIp AS caller_ip
FROM
  `[你的宿主项目ID].[日志存储数据集名].cloudaudit_googleapis_com_data_access_*`
WHERE
  protopayload_auditlog.serviceName = 'bigquery.googleapis.com'
  AND protopayload_auditlog.methodName IN ('jobservice.insert', 'jobservice.query')
  -- 过滤出访问目标共享数据集的记录
  AND EXISTS (
    SELECT 1 
    FROM UNNEST(protopayload_auditlog.servicedata_v1_bigquery.jobStatistics.referencedTables) t
    WHERE t.datasetId = '[你共享出去的数据集ID]'
  )

注意事项

  • 如果你给共享数据集配置了行级权限、列级权限、授权视图等细粒度访问控制,审计日志依然会准确记录用户实际访问到的底层表信息,不会因为权限层的封装出现审计盲区
  • 你可以基于日志数据配置自定义告警规则,比如短时间内单账号扫描超大量敏感表、非工作时间访问核心数据集等场景,触发即时通知
  • 整个配置过程不需要对外部用户的项目做任何调整,也不需要向对方索要任何权限,审计过程对外部用户完全透明

内容的提问来源于stack exchange,提问作者Itay Polack-Gadassi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 22:45:38