分析 Azure Blob Storage 数据

本页面介绍了如何为 Azure Blob Storage 配置 Sensitive Data Protection 发现功能。此功能仅适用于已在 Enterprise 层级激活 Security Command Center 的客户。

Sensitive Data Protection 发现服务可帮助您了解 Blob Storage 中存储的数据类型以及数据的敏感程度。对 Blob Storage 数据进行分析时,您会生成文件存储区数据分析,其中包含有关 Blob Storage 容器的分析洞见和元数据。对于每个 Blob Storage 容器,文件存储数据配置文件包含以下信息:

  • 您存储在容器中的文件类型,分为文件集群
  • 容器中数据的敏感度级别
  • 有关每个检测到的文件集群的摘要,包括发现的敏感信息类型

如需查看每个文件存储区数据分析文件中包含的分析洞见和元数据的完整列表,请参阅文件存储区数据分析

如需详细了解发现服务,请参阅数据配置文件

工作流

分析 Azure Blob Storage 数据的高级工作流程如下:

  1. 在 Security Command Center 中,为 Microsoft Azure 创建连接器。确保您选择为 Sensitive Data Protection 发现服务授予权限

  2. global 区域或您计划存储发现扫描配置和所有生成的数据分析文件的区域中创建检查模板

  3. 为 Azure Blob Storage 创建发现扫描配置

    Sensitive Data Protection 会根据您指定的时间表对数据进行分析。

数据驻留注意事项

如果您计划分析来自其他云提供商的数据,请考虑以下事项:

  • 数据分析文件与发现扫描配置一起存储。相比之下,当您对 Google Cloud 数据进行剖析时,剖析文件会存储在要剖析的数据所在的同一区域中。
  • 如果您将检查模板存储在 global 区域,系统会在您存储发现扫描配置的区域中读取该模板的内存中副本。
  • 您的数据不会被修改。系统会在您存储发现扫描配置的区域中读取数据的内存中副本。不过,Sensitive Data Protection 无法保证数据在到达公共互联网后会通过哪些位置。数据通过 SSL 加密。

空文件和容器

发现功能不会扫描空的 Blob 存储文件和容器,也不会在列出发现的文件扩展名时将这些文件和容器考虑在内。仅包含空文件的容器也被视为空容器。

准备工作

  1. 在 Security Command Center 中,为 Microsoft Azure 创建连接器。如需了解详情,请参阅 Security Command Center 文档中的连接到 Microsoft Azure 以收集配置和资源数据

  2. 确认您拥有在组织级层配置数据剖析文件所需的 IAM 权限。

    如果您没有 Organization Administrator (roles/resourcemanager.organizationAdmin) 或 Security Admin (roles/iam.securityAdmin) 角色,您仍然可以创建扫描配置。不过,创建扫描配置后,必须由拥有上述任一角色的人员向您的服务代理授予数据剖析访问权限

  3. 确认您在 global 区域或您计划存储发现扫描配置和所有生成的数据剖析文件的区域中拥有检查模板。

    此任务仅允许您在 global 区域中自动创建检查模板。如果组织政策禁止您在 global 区域中创建检查模板,那么在执行此任务之前,您必须在计划存储发现扫描配置的区域中创建检查模板

  4. 如需在发生特定事件(例如敏感数据保护分析新容器)时向主题发送 Pub/Sub 通知,请在执行此任务之前创建 Pub/Sub 主题

如需生成数据剖析文件,您需要在服务代理容器中创建服务代理容器和服务代理。借助此任务,您可以自动创建这些资源。

创建扫描配置

  1. 转到创建扫描配置页面。

    转到“创建扫描配置”

  2. 前往您的组织。在工具栏上,点击项目选择器,然后选择您的组织。

以下部分详细介绍了创建扫描配置页面中的各个步骤。在每个部分结束时,点击继续

选择发现类型

选择 Azure Blob Storage

选择范围

执行下列其中一项操作:

  • 如需扫描 Azure 连接器有权访问的所有 Blob Storage 资产,请选择通过连接器扫描所有可用的 Azure 资产
  • 如需扫描单个 Azure 订阅中的 Blob Storage 数据,请选择扫描一个 Azure 订阅。输入订阅 ID。
  • 如需扫描单个 Blob Storage 容器,请选择扫描一个 Azure Blob Storage 容器。输入要扫描的容器的详细信息。

管理时间表

如果默认分析频率符合您的需求,您可以跳过创建扫描配置页面的这一部分。

配置此部分的原因如下:

  • 对所有数据或特定数据子集的分析频率进行精细调整。
  • 指定您不想进行分析的容器。
  • 用于指定您不想多次进行分析的容器。

如需对性能分析频率进行精细调整,请按以下步骤操作:

  1. 点击添加日程

  2. 过滤条件部分中,定义一个或多个过滤条件,以指定哪些容器在相应时间表的范围内。如果容器与定义的至少一个过滤条件匹配,则视为在相应时间表的范围内。

    如需配置过滤条件,请至少指定以下一项:

    • 订阅 ID 或用于指定一个或多个订阅 ID 的正则表达式
    • 容器名称或用于指定一个或多个容器的正则表达式

    正则表达式必须遵循 RE2 语法

    例如,如果您希望将账号中的所有容器都纳入过滤条件,请在订阅 ID 字段中输入订阅 ID。

    如需匹配过滤条件,容器必须满足相应过滤条件中指定的所有正则表达式。

    如需添加更多过滤条件,请点击添加过滤条件,然后重复此步骤。

  3. 点击频次

  4. 频率部分,指定是否对所选容器进行分析,以及分析频率:

    • 如果您不希望系统分析容器,请关闭分析此数据

    • 如果您希望至少对容器进行一次分析,请保持分析此数据处于开启状态。

      指定是否需要重新分析数据,以及哪些事件应触发重新分析操作。如需了解详情,请参阅生成数据剖析的频率

      1. 对于按计划,请指定您希望重新分析容器的频率。无论容器是否发生任何更改,系统都会重新分析这些容器。
      2. 对于检查模板发生更改时,请指定您是否希望在关联的检查模板更新时重新分析数据,如果希望,请指定重新分析的频率。

        当发生以下任一情况时,系统会检测到检查模板发生了更改:

        • 扫描配置中的检查模板名称发生更改。
        • 检查模板的 updateTime 发生变化。

      3. 例如,如果您为 us-west1 区域设置了检查模板,并且您更新了该检查模板,则只有 us-west1 区域中的数据会被重新分析。

  5. 可选:点击条件

    条件部分,您可以指定过滤条件中定义的容器在被 Sensitive Data Protection 分析之前必须满足的任何条件。

    默认情况下,Sensitive Data Protection 会扫描容器中的所有对象。如果您只想扫描特定 Blob 访问层中的对象,请选择这些层。如需包含没有访问层的 Blob,请选择不适用

  6. 点击完成

  7. 可选:如需添加更多安排,请点击添加安排,然后重复上述步骤。

  8. 如需指定各个安排之间的优先级,请使用 向上箭头和 向下箭头重新排序。

    时间表的顺序指定了如何解决时间表之间的冲突。如果容器同时符合两个不同时间表的过滤条件,则时间表列表中排在前面的时间表会决定相应容器的分析频率。

  9. 可选:修改或关闭兜底时间安排

    列表中的最后一个时间表是包罗万象的时间表。此时间表涵盖所选范围内的容器,这些容器与您创建的任何时间表都不匹配。包罗万象的时间表遵循系统默认的剖析频率

    • 如需调整“全部”时间表,请点击 修改时间表,然后根据需要调整设置。
    • 如需防止 Sensitive Data Protection 分析全盘扫描时间表涵盖的任何资源,请关闭对与任何自定义时间表都不匹配的资源进行分析

选择检查模板

根据您希望提供检查配置的方式,选择以下选项之一。无论您选择哪个选项,敏感数据保护都会扫描数据存储区域中的数据。也就是说,您的数据不会离开其原始区域。

选项 1:创建检查模板

如果您想在 global 区域中创建新的检查模板,请选择此选项。

  1. 点击创建新的检查模板
  2. 可选:如需修改默认选择的 infoType,请点击管理 infoType

    如需详细了解如何管理内置和自定义 infoType,请参阅通过Google Cloud 控制台管理 infoType

    您必须至少选择一种 infoType 才能继续。

  3. 可选:通过添加规则集并设置置信度阈值,进一步配置检查模板。如需了解详情,请参阅配置检测

Sensitive Data Protection 创建扫描配置时,会将此新检查模板存储在 global 区域中。

方法 2:使用现有的检查模板

如果您有想要使用的现有检查模板,请选择此选项。

  1. 点击选择现有的检查模板
  2. 输入您要使用的检查模板的完整资源名称。 区域字段会自动填充检查模板的存储区域名称。

    您输入的检查模板必须与您计划存储此发现扫描配置和所有生成的数据剖析文件的区域位于同一区域。

    为了遵循数据驻留要求,Sensitive Data Protection 不会使用存储区域以外的检查模板。

    如需查找检查模板的完整资源名称,请按以下步骤操作:

    1. 转到检查模板列表。系统会在另一个标签页中打开此页面。

      前往检查模板

    2. 切换到包含您要使用的检查模板的项目。
    3. 模板标签页上,点击要使用的模板的 ID。
    4. 在打开的页面上,复制模板的完整资源名称。完整资源名称采用以下格式:
      projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
    5. 创建扫描配置页面上,在模板名称字段中粘贴模板的完整资源名称。

添加操作

本部分介绍如何指定您希望敏感数据保护在分析容器后采取的操作。如果您想将从数据分析中获得的分析洞见发送到其他Google Cloud 服务,这些操作会非常有用。

发布到 Google Security Operations

从数据配置文件中收集的指标可以为 Google Security Operations 的发现结果添加背景信息。添加的上下文可帮助您确定最需要解决的安全问题。

例如,如果您正在调查某个特定服务代理,Google Security Operations 可以确定该服务代理访问了哪些资源,以及其中是否有任何资源包含高敏感度数据。

如需将数据分析结果发送到您的 Google Security Operations 实例,请开启发布到 Google Security Operations

如果您尚未为组织启用 Google Security Operations 实例(通过独立产品Security Command Center Enterprise),那么开启此选项没有任何效果。

发布到 Security Command Center

Security Command Center 中对漏洞和威胁发现结果进行分类并制定应对方案时,数据剖析的发现结果可提供相关背景信息。

如需将数据分析结果发送到 Security Command Center,请确保发布到 Security Command Center 选项处于开启状态。

如需了解详情,请参阅将数据分析结果发布到 Security Command Center

将数据配置文件副本保存到 BigQuery

敏感数据保护功能会将每个生成的数据剖析文件的副本保存到 BigQuery 表中。如果您未提供首选表的详细信息,Sensitive Data Protection 会在服务代理容器中创建数据集和表。默认情况下,数据集名为 sensitive_data_protection_discovery,表名为 discovery_profiles

使用此选项可以保留所有已生成剖析文件的历史记录。此历史记录可用于创建审核报告和直观呈现数据配置文件。您还可以将这些信息加载到其他系统。

此外,使用此选项,您可以在一个视图中查看所有数据剖析文件,而不考虑数据位于哪个区域。虽然您也可以通过Google Cloud 控制台查看数据分析,但控制台一次只能显示一个区域的分析。

如果敏感数据保护功能无法分析容器,则会定期重试。为了最大限度地减少导出数据中的噪声,敏感数据保护仅将成功生成的剖析文件导出到 BigQuery。

Sensitive Data Protection 会从您开启此选项时开始导出剖析文件。在您启用导出功能之前生成的数据分析文件不会保存到 BigQuery。

如需查看可在分析数据剖析时使用的示例查询,请参阅分析数据剖析

将发现结果示例保存到 BigQuery

敏感数据保护可以将抽样结果添加到您选择的 BigQuery 表中。抽样结果仅代表部分结果,可能无法代表发现的所有 infoType。 通常,系统会为每个容器生成大约 10 个样本发现,但每次发现运行的样本数量可能会有所不同。

每项发现结果都包含检测到的实际字符串(也称为引用)及其确切位置。

如果您想评估检查配置是否正确匹配了您想标记为敏感的信息类型,此操作会非常有用。使用导出的数据配置文件和导出的样本发现结果,您可以运行查询来获取有关被标记的特定项、它们匹配的 infoType、它们的确切位置、计算出的敏感度级别和其他详细信息的更多信息。

此示例需要同时启用将数据剖析文件副本保存到 BigQuery将发现结果示例保存到 BigQuery

以下查询对导出的数据配置文件表和导出的样本发现表都使用了 INNER JOIN 操作。在生成的表格中,每条记录都显示了发现结果的引用、匹配的 infoType、包含发现结果的资源以及计算出的资源敏感度。

SELECT
 findings_table.quote,
 findings_table.infotype.name,
 findings_table.location.container_name,
 profiles_table.file_store_profile.file_store_path as bucket_name,
 profiles_table.file_store_profile.sensitivity_score as bucket_sensitivity_score
FROM
 `FINDINGS_TABLE_PROJECT_ID.FINDINGS_TABLE_DATASET_ID.FINDINGS_TABLE_ID_latest_v1` AS findings_table
INNER JOIN
 `PROFILES_TABLE_PROJECT_ID.PROFILES_TABLE_DATASET_ID.PROFILES_TABLE_ID_latest_v1` AS profiles_table
ON
 findings_table.data_profile_resource_name=profiles_table.file_store_profile.name

如需将发现结果示例保存到 BigQuery 表中,请按以下步骤操作:

  1. 开启将发现结果示例保存到 BigQuery

  2. 输入要保存发现结果示例的 BigQuery 表的详细信息。

    您为此操作指定的表必须不同于用于将数据剖析文件副本保存到 BigQuery 操作的表。

    • 对于项目 ID,请输入要将发现结果导出到的现有项目的 ID。

    • 数据集 ID 中,输入项目中现有数据集的名称。

    • 表 ID 部分,输入您要将发现结果保存到的 BigQuery 表的名称。如果此表不存在,Sensitive Data Protection 会使用您提供的名称自动为您创建此表。

如需了解保存在 BigQuery 表中的每项发现结果的内容,请参阅 DataProfileFinding

发布到 Pub/Sub

启用发布到 Pub/Sub 后,您可以根据分析结果采取程序化操作。您可以使用 Pub/Sub 通知来开发工作流,以捕获和修正具有重大数据风险或敏感性的发现结果。

如需向 Pub/Sub 主题发送通知,请按以下步骤操作:

  1. 开启发布到 Pub/Sub

    系统会显示一个选项列表。每个选项都描述了一个事件,该事件会导致 Sensitive Data Protection 向 Pub/Sub 发送通知。

  2. 选择应触发 Pub/Sub 通知的事件。

    如果您选择每当更新配置文件时就发送 Pub/Sub 通知,Sensitive Data Protection 会在配置文件中的敏感度级别、数据风险级别、检测到的 infoType、公开访问权限和其他重要指标发生变化时发送通知。

  3. 对于您选择的每个活动,请按以下步骤操作:

    1. 输入主题的名称。名称必须采用以下格式:

      projects/PROJECT_ID/topics/TOPIC_ID
      

      替换以下内容:

      • PROJECT_ID:与 Pub/Sub 主题关联的项目的 ID。
      • TOPIC_ID:Pub/Sub 主题的 ID。
    2. 指定是在通知中包含完整的容器配置文件,还是仅包含已分析的容器的完整资源名称。

    3. 设置必须满足的最低数据风险等级和敏感程度,以便 Sensitive Data Protection 发送通知。

    4. 指定是必须满足数据风险和敏感度条件中的一个还是两个。例如,如果您选择 AND,则必须同时满足数据风险条件和敏感度条件,Sensitive Data Protection 才会发送通知。

管理服务代理容器和结算

在本部分中,您将指定要用作服务代理容器的项目。您可以让敏感数据保护自动创建新项目,也可以选择现有项目。

无论您是使用新创建的服务代理还是重用现有服务代理,都要确保该服务代理具有对要进行性能剖析的数据的读取权限。

自动创建项目

如果您没有在组织中创建项目所需的权限,则需要选择现有项目,或者获取所需的权限。如需了解所需的权限,请参阅在组织或文件夹级层使用数据剖析文件所需的角色

如需自动创建项目以用作服务代理容器,请按照以下步骤操作:

  1. 服务代理容器字段中,查看建议的项目 ID,并根据需要进行修改。
  2. 点击创建
  3. 可选:更新默认项目名称。
  4. 选择要对与此新项目相关的所有可计费操作(包括与发现无关的操作)付费的账号。

  5. 点击创建

Sensitive Data Protection 会创建新项目。此项目中的服务代理将用于向 Sensitive Data Protection 和其他 API 进行身份验证。

选择现有项目

如需选择现有项目作为服务代理容器,请点击服务代理容器字段,然后选择相应项目。

设置用于存储配置的位置

点击资源位置列表,然后选择要存储此扫描配置的区域。您日后创建的所有扫描配置也将存储在此位置。

您选择存储扫描配置的位置不会影响要扫描的数据。系统会扫描存储数据的同一个区域中的数据。如需了解详情,请参阅数据驻留注意事项

检查并创建配置

  1. 如果您想确保在创建扫描配置后剖析不会自动开始,请选择在暂停模式下创建扫描

    此选项适用于以下情况:

    • 您的 Google Cloud 管理员仍需向服务代理授予数据剖析访问权限
    • 您要创建多项扫描配置,并且希望某些配置替换其他配置。
    • 您选择将数据剖析文件保存到 BigQuery,并希望确保服务代理对将要保存数据剖析文件副本的 BigQuery 表具有写入权限。
    • 您已选择将发现结果示例保存到 BigQuery,并且想要确保服务代理对将要保存示例发现结果的 BigQuery 表具有写入权限。
    • 您已配置 Pub/Sub 通知,并希望向服务代理授予发布访问权限
  2. 检查设置,然后点击创建

    Sensitive Data Protection 会创建扫描配置并将其添加到发现扫描配置列表中。

如需查看或管理扫描配置,请参阅管理扫描配置

后续步骤