混合作业和作业触发器

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

混合作业和作业触发器包含一组异步 API 方法,可让您扫描从几乎任何来源发送的数据的敏感信息并将其存储在 Google Cloud 中。借助混合作业,您可以编写自己的数据抓取工具,其行为和传送数据的方式与 Cloud Data Loss Prevention 存储检查方法类似。

使用混合作业,您可以将任何来源的数据流式传输到 Cloud DLP。Cloud DLP 会检查数据是否存在敏感信息或个人身份信息,然后将检查扫描结果保存到 Cloud DLP 作业资源中。您可以在 Cloud DLP 控制台界面或 API 中检查扫描结果,也可以指定要运行的扫描后操作,例如将检查结果数据保存到 BigQuery 表中或发出 Pub/Sub 通知。

混合作业工作流汇总如下:

混合作业数据流图,展示您的应用从外部源向 Cloud DLP 发送数据、Cloud DLP 检查数据,然后保存或发布发现结果。

本概念性主题介绍了混合作业和作业触发器及其工作原理。 如需了解如何实现混合作业和作业触发器,请参阅使用混合作业检查外部数据

混合环境简介

“混合”环境在组织中很常见。许多组织都使用以下某种组合存储和处理敏感数据:

  • 其他云服务商
  • 本地服务器或其他数据存储库
  • 非原生存储系统,例如在虚拟机内运行的系统
  • Web 应用和移动应用
  • 基于 Google Cloud 的解决方案

使用混合作业时,Cloud DLP 可以检查从这些来源中发送到它的数据。下面列出了一些示例场景:

  • 检查存储在 Amazon Relational Database Service (RDS)、虚拟机内运行的 MySQL 或本地数据库中的数据。
  • 在从本地迁移到云端或在生产、开发和分析之间迁移数据时,检查和令牌化数据。
  • 在存储静态数据之前,检查并隐去 Web 应用或移动应用中的事务。

检查选项

方法类型中详细说明的那样,您可以使用 Cloud DLP 提供的三个默认选项检查敏感数据的内容:

  • 内容方法检查:使用内容检查,您可以向 Cloud DLP 流式传输少量数据以及有关检查内容的说明。然后,Cloud DLP 会检查数据是否存在敏感内容和个人身份信息,并将扫描结果返回给您。
  • 存储方法检查:使用 Cloud Storage 检查,Cloud DLP 可以检查基于 Google Cloud 的存储库,例如 BigQuery 数据库、Cloud Storage 存储桶或 Datastore 种类。您将告诉 Cloud DLP 要检查的内容和要检查的内容,然后 Cloud DLP 会运行用于扫描代码库的作业。扫描完成后,Cloud DLP 会将扫描结果的摘要保存回作业。您还可以指定将结果发送到其他 Google Cloud 产品进行分析,例如单独的 BigQuery 表。
  • 混合作业检查:混合作业具有前两种方法的优势。借助它们,您可以像使用内容方法一样流式传输数据,同时获得存储检查作业的存储、可视化和操作。所有检查配置都在 Cloud DLP 中管理,无需在客户端进行额外配置。混合作业可用于扫描非原生存储系统,例如在虚拟机 (VM)、本地或其他云平台上运行的数据库。混合方法还可用于检查处理系统(如迁移工作负载),甚至可用于代理服务到服务的通信。虽然内容方法也可以做到这一点,但混合方法为您提供发现结果存储后端,该后端可以跨多个 API 调用聚合数据,因此您不必这样做。

关于混合作业和作业触发器

混合作业实际上是将内容方法和存储方法混合使用。使用混合作业和作业触发器的基本工作流如下:

  1. 您可以编写脚本或创建将数据连同某些元数据一起发送到 Cloud DLP 以供检查的工作流。
  2. 您可以配置并创建混合作业资源或触发器,并使其在接收数据时启用。
  3. 您的脚本或工作流在客户端运行,并以 hybridInspect 请求的形式将数据发送到 Cloud DLP。数据包括激活消息以及触发检查的作业或作业触发器的标识符。
  4. Cloud DLP 会根据您在混合作业或触发器中设置的条件检查数据。
  5. Cloud DLP 会将扫描结果以及您提供的元数据保存到混合作业资源中。您可以使用 Google Cloud 控制台中的 Cloud DLP 界面检查结果。
  6. (可选)Cloud DLP 可以运行扫描后操作,例如将检查结果数据保存到 BigQuery 表或通过电子邮件或 Pub/Sub 通知您。

借助混合作业触发器,您可以创建、激活和停止作业,以便随时触发操作。通过确保脚本或代码发送包含混合作业触发器标识符的数据,您无需在每次启动新作业时更新脚本或代码。

典型混合作业场景

混合型职位非常适合以下目标:

  • 在 Google Cloud 外部执行数据库的一次性扫描,作为对数据库的季度抽查的一部分。
  • 监控每天添加到 Cloud DLP 原生不支持的数据库的所有新内容。
  • 扫描传入数据库的数据,同时控制数据的分区方式。
  • 使用适用于 Envoy 的 Cloud DLP 过滤器(用于 Envoy Sidecar 代理的 WebAssembly HTTP 过滤器)监控网络中的流量,以识别有问题的敏感数据移动。

如需了解如何处理这些场景,请参阅典型的混合检查场景

您可以提供的元数据类型

本部分介绍了您可以附加到要检查的外部数据或附加到发现结果的元数据类型。

您可以在以下级别设置元数据:

混合作业或混合作业触发器中的元数据

本部分介绍了可以附加到混合作业或混合作业触发器的元数据类型。

必需的标签

在混合作业或混合作业触发器中,您可以指定您发送的所有混合检查请求中必须包含的必需标签列表。针对该混合作业或混合作业触发器的所有不包含这些必需标签的请求都将被拒绝。如需了解详情,请参阅需要来自 hybridInspect 请求的标签

可选的标签

您可以指定要附加到混合作业或混合作业触发器中的所有发现结果的键值对。例如,如果您希望混合作业的所有发现结果都带有 "env"="prod" 标签,请在创建混合作业时指定此键值对。

表格数据选项

您可以指定任何列作为数据中的表对象的行标识符(主键)。如果表中有指定的列,则给定列中包含的每个发现结果的值都包含在发现结果中,以便您可以跟踪发现结果的源行。这些表格选项仅适用于发送表格数据(如 item.table)或 byteItem 格式(如 CSV)的请求。

如果您提前了解主键,可以在创建混合作业或混合作业触发器时将其设为标识字段。您最多可在 hybridOptions.tableOptions.identifyingFields 字段中列出三个列名称。

hybridInspect 请求中的元数据

本部分介绍了可以附加到 hybridInspect 请求的元数据类型。您在 hybridInspect 请求中发送的元数据仅适用于该请求。

容器详情

发送到混合作业或混合作业触发器的每个请求都可以指定数据源的详细信息,包括 fullPathrootPathrelativePathtypeversion 等元素。例如,如果您要扫描数据库中的表,可以按如下方式设置字段:

{
  "hybridItem": {
    "item": {...},
    "findingDetails": {
      "containerDetails": {
        "fullPath": "10.0.0.20/database1/table1",
        "relativePath": "table1",
        "rootPath": "10.0.0.20/database1",
        "type": "postgres",
        "version": "9.6"
      },
      "labels": {...}
    }
  }
}

您不能在混合作业或混合作业触发器级别设置容器详细信息。

必需的标签

如果您在创建混合作业或混合作业触发器时设置了必需的标签,则发送到该混合作业或混合作业触发器的任何 hybridInspect 请求都必须包含这些必需的标签。如需了解详情,请参阅需要来自 hybridInspect 请求的标签

可选的标签

在每个 hybridInspect 请求中,您可以指定要附加到该请求中的任何发现结果的键值对。使用此方法,您可以为每个 hybridInspect 请求附加不同的标签。

表格数据选项

您可以指定任何列作为数据中的表对象的行标识符(主键)。如果表中有指定的列,则给定列中包含的每个发现结果的值都包含在发现结果中,以便您可以跟踪发现结果的源行。这些表格选项仅适用于发送表格数据(如 item.table)或 byteItem 格式(如 CSV)的请求。

如果您事先不知道主键,则无需在混合作业或混合作业触发器级设置它们。您可以在 hybridInspect 请求以及检查要检查的表格数据中进行设置。您在混合作业或混合作业触发器级别列出的所有字段都将与 hybridInspect 请求中列出的字段合并。

支持的操作

与其他 Cloud DLP 作业一样,混合作业支持操作。并非所有操作都适用于混合作业。以下是当前支持的操作及其运作方式的相关信息。请注意,使用 Pub/Sub、电子邮件和 Cloud Monitoring 操作时,发现结果将在作业结束时可用。

  • 将发现结果保存到 DLP将发现结果保存到 BigQuery:系统会将发现结果分别保存到 Cloud DLP 资源或 BigQuery 表中。这些操作与混合作业类型搭配使用的方式类似于这些操作与其他作业类型搭配使用,但有一个重要区别:对于混合作业,发现结果会在作业运行时提供;对于其他作业类型,发现结果会在作业结束时提供。
  • 发送 Pub/Sub:作业完成后,将发出 Pub/Sub 消息。
  • 发送电子邮件:完成任务后,系统会发送电子邮件。
  • 发布到 Cloud Monitoring:作业完成后,其发现结果将发布到 Monitoring。

总结

以下是使用混合作业和作业触发器的一些主要功能和优势:

  • 通过混合作业,您可以将数据从几乎任何来源(云上或云下)流式传输到 Cloud DLP。
  • 当 Cloud DLP 接收包含激活消息和作业触发器标识符的数据流时,混合作业触发器会激活。
  • 您可以等到检查扫描完成,也可以手动停止作业。检查结果会保存到 Cloud DLP 或 BigQuery 中,具体取决于您是允许作业完成还是提前停止作业。
  • 来自混合作业触发器的 Cloud DLP 检查扫描结果会保存到 Cloud DLP 内的混合作业资源中。
  • 您可以通过查看 Cloud DLP 内的作业触发器资源,对检查扫描结果进行检查。
  • 您还可以使用操作指示 Cloud DLP 将混合作业结果发送到 BigQuery 数据库,并通过电子邮件或 Pub/Sub 通知向您发送通知。

后续步骤