首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GCP数据丢失预防是否支持将其结果发布到外部大查询表的数据目录

GCP数据丢失预防是否支持将其结果发布到外部大查询表的数据目录
EN

Stack Overflow用户
提问于 2022-04-07 15:06:45
回答 1查看 244关注 0票数 1

我试图使用GCP中的数据丢失预防工具来自动标记InfoTypes,如PhoneNumber、GCS中的数据和大查询外部表上的EmailId,这样我就可以在Dataplex和Dataplex中获得这些标记。现在的问题是

  1. 如果我选择除大查询表(GCS、Data等)以外的任何源,则禁用将GCP DLP检查结果发布到数据目录的选项。
  2. 如果选择“大查询表”,则启用“数据目录发布”选项,但当我尝试运行检查作业时,其错误会显示“不支持外部表进行检查”。令人惊讶的是,它只支持内部大型查询表。

问题是,我对GCP的理解--数据目录集成只适用于内部大查询表吗?我在这里做错了什么,GCP文档也没有提到这些东西!

此外,在从DLP控制台配置检查作业时,我必须强制提供大查询表is,是否有一种方法可以针对BQ数据集或一组表运行DLP检查作业?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-07 19:07:48

关于数据丢失预防服务 in Google ,您的理解是正确的,不能通过复制到外部服务(例如,公共Google存储(GCS)桶或外部BigQuery表)对数据进行过滤。请访问此URL以获得更多参考。

现在,关于如何针对一组表运行DLP检查作业,有两种方法:

  • 以编程方式获取大查询表,查询表并调用DLP流媒体内容API。它是实时运行的,但它很昂贵。在这里,我在Java示例代码中分享这个概念:
代码语言:javascript
运行
复制
url =
    String.format(
        "jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;OAuthType=3;ProjectId=%s;",
        projectId);
DataSource ds = new com.simba.googlebigquery.jdbc42.DataSource();
ds.setURL(url);
conn = ds.getConnection();
DatabaseMetaData databaseMetadata = conn.getMetaData();
ResultSet tablesResultSet =
    databaseMetadata.getTables(conn.getCatalog(), null, "%", new String[]{"TABLE"});
while (tablesResultSet.next()) {
// Query your Table Data and call DLP Streaming API
}

以下是此方法的教程

  • 以编程方式获取大查询表,然后为每个表触发一个检查作业。这是最便宜的方法,但是您需要考虑它是一个批处理操作,所以它不会实时执行。下面是Python示例中的概念:
代码语言:javascript
运行
复制
client = bigquery.Client()
datasets = list(client.list_datasets(project=project_id))
 
if datasets:
    for dataset in datasets:
        tables = client.list_tables(dataset.dataset_id)
        for table in tables:
            # Create Inspect Job for table.table_id

使用此线程获取更多参考,以了解针对一系列表运行DLP检查作业的情况。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71784598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档