混合作业和作业触发器

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

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

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

混合作业数据流示意图,显示了您的应用将数据从外部来源发送到敏感数据保护、敏感数据保护检查数据,然后保存或发布发现结果。

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

混合环境简介

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

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

使用混合作业时,敏感数据保护可以检查从上述任何来源向其发送的数据。下面列出了一些示例场景:

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

检查选项

方法类型中详细介绍的那样,当您要检查内容中的敏感数据时,敏感数据保护提供了三个默认选项:

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

混合作业和作业触发器简介

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

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

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

典型混合作业场景

混合作业非常适合以下目标:

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

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

您可以提供的元数据类型

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

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

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

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

必需的标签

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

可选的标签

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

表格数据选项

您可以将任何列指定为数据中表对象的行标识符(主键)。如果表中存在指定列,则指定列中的值将添加到每个发现结果中,以便您将发现结果追溯到其源自的行。这些表格选项仅适用于发送表格数据(例如 CSV 等 item.tablebyteItem 格式)的请求。

如果您提前知道主键,则可以在创建混合作业或混合作业触发器时将其设置为标识字段。在 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 请求附加不同的标签。

表格数据选项

您可以将任何列指定为数据中表对象的行标识符(主键)。如果表中存在指定列,则指定列中的值将添加到每个发现结果中,以便您将发现结果追溯到其源自的行。这些表格选项仅适用于发送表格数据(例如 CSV 等 item.tablebyteItem 格式)的请求。

如果您提前不知道主键,则不必在混合作业或混合作业触发器级别设置主键。您可以在 hybridInspect 请求中设置这些变量,以及要检查的表格数据。您在混合作业或混合作业触发器级别列出的任何字段都会与您在 hybridInspect 请求中列出的字段合并到一起。

支持的操作

与其他敏感数据保护作业一样,混合作业支持操作。并非所有操作都适用于混合作业。 以下是目前支持的操作及其工作原理信息。请注意,对于 Pub/Sub、电子邮件和 Cloud Monitoring 操作,可在作业结束时提供发现结果。

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

  • 发送电子邮件:在任务完成后,系统会发送电子邮件。

  • 发布到 Cloud Monitoring:作业完成后,其发现结果将发布到 Monitoring。

摘要

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

  • 混合作业可让您将几乎任何来源(无论是云上还是云端)的数据流式传输到敏感数据保护服务。
  • 当敏感数据保护收到包含激活消息和作业触发器标识符的数据流时,混合作业触发器就会激活。
  • 您可以等到检查扫描完成,也可以手动停止作业。无论您提前完成作业还是停止作业,检查结果都会保存到敏感数据保护或 BigQuery。
  • 来自混合作业触发器的敏感数据保护检查扫描结果会保存到敏感数据保护内的混合作业资源中。
  • 您可以通过查看敏感数据保护中的作业触发器资源来检查检查扫描结果。
  • 您还可以指示敏感数据保护使用操作将混合作业结果发送到 BigQuery 数据库,并通过电子邮件或 Pub/Sub 通知通知您。

后续步骤