我想查看访问过 Bigquery 数据集和表的用户/服务帐户的日志

I want to view logs of users/service account who has accessed the Bigquery dataset & table

提问人:Shaker Khan 提问时间:11/15/2023 最后编辑:jarlhShaker Khan 更新时间:11/15/2023 访问量:16

问:

我有审计日志表,即我想从此表中提取的“cloudaudit_googleapis_com_data_access”、用户名/服务帐户电子邮件、访问或查询表的时间戳、数据集名称以及访问或运行查询的表。我想要这个信息。我尝试编写查询,但我获得的是常规查询的 jobID/datasetids,而不是数据集名称,但如果用户运行“创建”查询,那么我可以看到数据集名称和表名。我得到了时间戳和用户作为输出,但我在数据集名称和表名称中遇到了问题。

我已经用过这个了

SELECT

timestamp,

protopayload auditlog.authenticationInfo.principal Email as user,

protopayload auditlog.servicedata_v1_bigquery.jobQueryDoneResponse.job.jobConfiguration.query as query,

protopayload_auditlog.servicedata_vi_bigquery.jobCompletedEvent.job.jobConfiguration.query.destinationTable datasetID as dataset, protopayload auditlog.servicedata_vi_bigquery.jobCompletedEvent.job.jobConfiguration.query.destinationTable tableID as table,



From `shaker.jack.cloudaudit_googleapis_com_data_access`

Order by timestamp DESC

使用此查询后,当用户对其他查询使用“创建”查询时,我得到了 datasetname 和 tablename,我得到了随机的 I'ds。我需要用户使用或访问数据的所有查询的名称。请帮忙。

sql google-cloud-platform google-bigquery

评论


答: 暂无答案