在 BigQuery 数据仓库中实现 CDMC 主要控制措施框架

CDMC 徽章

许多组织都会部署云数据仓库来存储敏感信息,以便为各种业务目的分析数据。本文档介绍了如何在 BigQuery 数据仓库中实施由企业数据管理委员会管理的云数据管理功能 (CDMC) 主要控制措施框架。

CDMC 主要控制措施框架主要面向云服务提供商和技术提供商。该框架描述了 14 项主要控制措施,提供商可以实施这些控制措施,以便其客户有效地管理和治理云中的敏感数据。这些控制措施由 CDMC 工作组编写,其中包括来自 100 多家公司的 300 多名专家。在编写框架时,CDMC 工作组考虑了许多法律和法规要求。

此 BigQuery 和 Data Catalog 参考架构根据 CDMC 主要控制措施框架作为 CDMC 认证云解决方案进行了评估和认证。参考架构使用各种 Google Cloud 服务和功能以及公共库来实施 CDMC 主要控制措施和推荐的自动化。本文档介绍如何实施有助于保护 BigQuery 数据仓库中的敏感数据的主要控制措施。

架构

以下 Google Cloud 参考架构符合 CDMC 主要控制措施框架测试规范 v1.1.1。图中的数字代表通过 Google Cloud 服务处理的主要控制措施。

CDMC 架构组件。

参考架构基于安全数据仓库蓝图构建,该蓝图提供的架构可帮助您保护包含敏感信息的 BigQuery 数据仓库。在上图中,图表顶部的项目(灰色)是安全数据仓库蓝图的一部分,数据治理项目(蓝色)包括为满足 CDMC 主要控制措施框架要求而添加的服务。为了实施 CDMC 主要控制措施框架,该架构扩展了数据治理项目。数据治理项目提供分类、生命周期管理和数据质量管理等控制措施。该项目还提供了一种审核架构和报告发现结果的方法。

如需详细了解如何实现此参考架构,请参阅 GitHub 上的 Google Cloud CDMC 参考架构

CDMC 主要控制措施框架概览

下表总结了 CDMC 主要控制措施框架

# CDMC 主要控制措施 CDMC 控制要求
1 数据控制合规性 云数据管理商业案例得到定义和治理。包含敏感数据的所有数据资产都必须使用指标和自动通知进行监控,以确保其符合 CDMC 主要控制措施。
2 为迁移的数据和云生成的数据确立数据所有权 必须为所有敏感数据填充数据目录中的所有权字段,或以其他方式报告给定义的工作流。
3 数据获取和使用受自动化治理和支持 必须为包含敏感数据的所有数据资产填充权威数据源和预配点的寄存器,否则必须将其报告给定义的工作流。
4 数据主权和跨边界数据移动得到管理 必须根据定义的政策记录、审核并控制敏感数据的数据主权和跨境移动。
5 数据目录已实现、使用和互操作 创建或提取时,必须对所有数据自动化编制目录,并在所有环境中保持一致性。
6 数据分类得到定义和使用 在创建或提取时,必须对所有数据都自动进行分类,并且必须始终开启。对于以下各项,系统会自动分类:
7 数据权益得到管理、实施和跟踪 此控制措施需要以下各项:
  • 对敏感数据的权益和访问权限必须默认为创建者和所有者,直到明确或权威进行授予。
  • 所有敏感数据的访问都必须进行跟踪。
8 数据的道德访问、使用情况和结果得到管理 必须为所有涉及敏感数据的数据共享协议提供数据使用目的。目的必须指定数据类型;对于全球性组织,必须指定国家/地区或法律实体范围。
9 数据受到保护,控制措施得到证明 此控制措施需要以下各项:
  • 必须为敏感数据启用适当的安全控制措施
  • 所有敏感数据的安全控制措施证据必须记录在数据目录中。
10 数据隐私框架得到定义和运作 必须根据其管辖区自动为所有个人数据触发数据保护影响评估 (DPIA)。
11 数据生命周期得到规划和管理 数据保留、归档和清除必须根据定义的保留时间表进行管理。
12 数据质量得到管理 必须为敏感数据启用数据质量衡量,并在可行时相应地分配指标。
13 费用管理原则得到确立和应用 技术设计原则得到制定和应用。必须在目录中提供与数据使用、存储和移动相关的直接费用指标。
14 数据来源和沿袭得到了解 数据沿袭信息必须可用于所有敏感数据。此信息必须至少包含提取数据的来源或在云环境中创建的数据。

1. 数据控制合规性

此控制措施要求您验证可以使用指标监控所有敏感数据,以检查其是否符合此框架。

该架构使用可显示每一主要控制措施执行程度的指标。该架构还包含信息中心,用于指示指标何时未达到定义的阈值。

该架构包括在数据资产不符合主要控制措施时发布发现结果和补救建议的检测器。这些发现结果和建议采用 JSON 格式,并发布到 Pub/Sub 主题以分发给订阅者。您可以将内部服务台或服务管理工具与 Pub/Sub 主题集成,以便在工单系统中自动创建突发事件。

该架构使用 Dataflow 为发现结果事件创建示例订阅者,然后这些事件会存储在数据治理项目中运行的 BigQuery 实例中。借助许多提供的视图,您可以在 Google Cloud 控制台中使用 BigQuery Studio 查询数据。您还可以使用 Looker Studio 或其他与 BigQuery 兼容的商业智能工具创建报告。您可以查看的报告包括:

  • 上次运行的发现结果摘要
  • 上次运行的发现结果的详细信息
  • 上次运行的元数据
  • 上次运行的数据资产范围
  • 上次运行的数据集统计信息

下图显示了适用于此控制措施的服务。

控制措施 1 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • Pub/Sub 会发布发现结果。
  • Dataflow 将发现结果加载到 BigQuery 实例中。
  • BigQuery 会存储发现结果数据并提供摘要视图。
  • Looker Studio 提供信息中心和报告。

以下屏幕截图显示了 Looker Studio 摘要信息中心示例。

Looker Studio 摘要信息中心示例。

以下屏幕截图显示了按数据资产划分的结果示例视图。

按数据资产划分的发现结果示例视图。

2. 为迁移的数据和云生成的数据确立数据所有权

为了满足此控制措施的要求,架构会自动审核 BigQuery 数据仓库中的数据,并添加数据分类标记(指示针对所有敏感数据识别所有者)。

Data Catalog 是 Dataplex 的一项功能,可处理两种类型的元数据:技术元数据和业务元数据。对于给定项目,Data Catalog 会自动为 BigQuery 数据集、表和视图编制目录,并填充技术元数据。目录和数据资产之间的同步近乎实时地进行。

该架构使用 Tag Engine 将以下业务元数据标记添加到 Data Catalog 中的 CDMC controls 标记模板:

  • is_sensitive:数据资产是否包含敏感数据(请参阅数据分类的控制措施 6
  • owner_name:数据的所有者
  • owner_email:所有者的电子邮件地址

这些标记使用存储在数据治理项目中的参考 BigQuery 表中的默认值进行填充。

默认情况下,架构会在表级层设置所有权元数据,但您可以更改架构,以便在列级层设置元数据。如需了解详情,请参阅 Data Catalog 标记和标记模板

下图显示了适用于此控制措施的服务。

控制措施 2 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个存储数据资产所有权的默认设置。
  • Data Catalog 通过标记模板和标记来存储所有权元数据。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,它会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构会检查敏感数据是否分配有所有者名称标签。

3. 数据获取和使用受自动化治理和支持

此控制措施需要对数据资产进行分类,以及对权威来源和授权分销商的数据寄存器。该架构使用 Data Catalog 将 is_authoritative 标记添加到 CDMC controls 标记模板。此标记用于定义数据资产是否具有权威性。

Data Catalog 使用技术元数据和业务元数据为 BigQuery 数据集、表和视图编制目录。技术元数据会自动填充,并包含资源网址,即预配点的位置。业务元数据在 Tag Engine 配置文件中定义,并包含 is_authoritative 标记。

在下一次计划运行期间,Tag Engine 会使用存储在 BigQuery 引用表中的默认值填充 CDMC controls 标记模板中的 is_authoritative 标记。

下图显示了适用于此控制措施的服务。

控制措施 3 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个存储数据资产权威来源的默认值。
  • Data Catalog 通过标记存储权威来源元数据。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构会检查是否为敏感数据分配了权威来源标记。

4.数据主权和跨边界数据移动得到管理

此控制措施要求架构检查数据注册表中是否存在特定于区域的存储要求,并强制执行使用规则。报告描述了数据资产的地理位置。

该架构使用 Data Catalog 将 approved_storage_location 标记添加到 CDMC controls 标记模板。此标记用于定义允许存储数据资产的地理位置。

数据的实际位置以技术元数据的形式存储在 BigQuery 表详细信息中。BigQuery 不允许管理员更改数据集或表的位置。而如果管理员要更改数据位置,他们必须复制数据集

组织政策服务的资源位置限制条件定义了您可以用于存储数据的 Google Cloud 区域。默认情况下,架构会对机密数据项目设置限制条件,但您可以根据需要在组织或文件夹级层设置限制条件。Tag Engine 将允许的位置复制到 Data Catalog 标记模板,并将该位置存储在 approved_storage_location 标记中。如果您激活了 Security Command Center 高级层级,并且有人更新了组织政策服务的资源位置限制条件,则 Security Command Center 将为存储在更新政策之外的资源生成漏洞发现结果

Access Context Manager 定义了用户必须先位于什么地理位置才能访问数据资产。使用访问权限级别,您可以指定请求来自哪些区域。然后,向机密数据项目的 VPC Service Controls 边界添加访问权限政策

为了跟踪数据移动,BigQuery 会为每个数据集维护一个完整的审计跟踪,并针对每个数据集进行查询。审核跟踪存储在 BigQuery 信息架构作业视图中。

下图显示了适用于此控制措施的服务。

控制措施 4 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 组织政策服务定义并实施资源位置限制条件。
  • Access Context Manager 定义用户可以从哪些位置访问数据。
  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个托管用于检查位置政策的远程函数。
  • Data Catalog 将已获批准的存储位置存储为标记。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。
  • Cloud Logging 会写入审核日志。
  • Security Command Center 会报告与资源位置或数据访问相关的所有发现结果。

为了检测与此控制措施相关的问题,架构会包含相关发现结果,其中为已获批准的位置标记是否包含敏感数据的位置。

5. 数据目录已实现、使用和互操作

此控制措施要求存在数据目录,并且架构可以扫描新的资产和更新后的资产,以根据需要添加元数据。

为了满足此控制措施的要求,该架构使用 Data Catalog。Data Catalog 会自动记录 Google Cloud 资产,包括 BigQuery 数据集、表和视图。当您在 BigQuery 中创建新表时,Data Catalog 会自动注册新表的技术元数据和架构。在 BigQuery 中更新表时,Data Catalog 几乎可以即时更新其条目。

下图显示了适用于此控制措施的服务。

控制措施 5 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个存储非机密数据。
  • Data Catalog 会存储表和字段的技术元数据。

默认情况下,在此架构中,Data Catalog 会存储来自 BigQuery 的技术元数据。如果需要,您可以将 Data Catalog 与其他数据源集成

6. 数据分类得到定义和使用

此评估要求可以根据数据的敏感性对数据进行分类,例如数据是 PII、可标识客户端,或者数据符合组织定义的其他标准。为了满足此控制措施的要求,该架构创建了数据资产报告及其敏感度报告。您可以使用此报告来验证敏感度设置是否正确。此外,每个新数据资产或对现有数据资产的更改都会导致数据目录更新。

分类存储在 Data Catalog 标记模板的 sensitive_category 标记中(表级层和列级层)。通过分类参考表,您可以对可用的敏感数据保护信息类型 (infoType) 进行排名,内容越敏感排名越高。

为了满足此控制的要求,该架构使用敏感数据保护、Data Catalog 和 Tag Engine 将以下标记添加到 BigQuery 表中的敏感列:

  • is_sensitive:数据资产是否包含敏感信息
  • sensitive_category:数据的类别。以下项之一:
    • 敏感的个人身份信息
    • 个人身份信息
    • 敏感个人信息
    • 个人信息
    • 公开信息

您可以更改数据类别,以满足您的要求。例如,您可以添加重要非公开信息 (MNPI) 分类。

敏感数据保护检查数据后,Tag Engine 会读取每个资产的 DLP results 表以编译发现结果。如果一个表包含具有一个或多个敏感 infoType 的列,则确定最显著的 infoType,并且敏感列和整个表都标记为具有最高排名的类别。Tag Engine 还会为该列分配相应的政策标记并将 is_sensitive 布尔值标记分配给该表。

您可以使用 Cloud Scheduler 自动执行敏感数据保护检查。

下图显示了适用于此控制措施的服务。

控制措施 6 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 四个 BigQuery 数据仓库存储以下信息:
    • 机密数据
    • 敏感数据保护结果信息
    • 数据分类参考数据
    • 标记导出信息
  • Data Catalog 存储分类标记。
  • 敏感数据保护检查资产中是否存在敏感的 infoType。
  • Compute Engine 运行检查数据集脚本,以便为每个 BigQuery 数据集触发敏感数据保护作业。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • 是否为敏感数据分配了敏感类别标记。
  • 敏感数据是否分配有列级敏感度类型标记。

7. 数据权益得到管理、实施和跟踪

默认情况下,只有创建者和所有者才分配有访问敏感数据的权限和访问权限。此外,此控制措施要求架构跟踪对敏感数据的所有访问。

为了满足此控制措施的要求,架构使用 BigQuery 中的 cdmc sensitive data classification 政策标记分类来控制对 BigQuery 表中包含机密数据的列的访问。分类包括以下政策标记:

  • 敏感的个人身份信息
  • 个人身份信息
  • 敏感个人信息
  • 个人信息

政策标记可让您控制谁可以查看 BigQuery 表中的敏感列。此架构会将这些政策标记与源自敏感数据保护 infoType 的敏感度分类相对应。例如,sensitive_personal_identifiable_information 政策标记和敏感类别对应 AGEDATE_OF_BIRTHPHONE_NUMBEREMAIL_ADDRESS 等 infoType。

该架构使用 Identity and Access Management (IAM) 管理需要访问数据的群组、用户和服务账号。系统会向给定资产授予 IAM 权限以进行表级访问。此外,基于政策标记的列级访问权限允许对敏感数据资产进行精细访问。默认情况下,用户无权访问已定义政策标记的列。

为帮助确保只有经过身份验证的用户才能访问数据,Google Cloud 会使用 Cloud Identity,您可以将其与您现有的身份提供方联合,以对用户进行身份验证。

此控制还要求架构定期检查未定义权益的数据资产。由 Cloud Scheduler 管理的检测器会检查以下场景:

  • 数据资产包含敏感类别,但没有相关的政策标记。
  • 类别与政策标记不匹配。

发生这种情况时,检测器会生成由 Pub/Sub 发布的发现结果,然后由 Dataflow 写入 BigQuery 中的 events 表。然后,您可以将发现结果分发到您的修复工具,如 1. 数据控制合规性

下图显示了适用于此控制措施的服务。

控制措施 7 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • BigQuery 数据仓库存储机密数据和政策标记绑定,以实现精细的访问权限控制。
  • IAM 管理访问权限。
  • Data Catalog 为敏感类别存储表级层和列级层标记。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。

为了检测与此控制措施相关的问题,此架构会检查敏感数据是否具有相应的政策标记。

8. 数据的道德访问、使用情况和结果得到管理

此控制措施要求架构存储来自数据提供方和数据使用方的数据共享协议,包括已获批准的使用目的列表。然后,使用查询标签将敏感数据的使用目的与 BigQuery 中存储的权益进行对应。当使用方查询 BigQuery 中的敏感数据时,他们必须指定与其权益匹配的有效目的(例如,SET @@query_label = “use:3”;)。

该架构使用 Data Catalog 将以下标记添加到 CDMC controls 标记模板。这些标记代表与数据提供方的数据共享协议:

  • approved_use:数据资产的批准用途或用户
  • sharing_scope_geography:数据资产可共享的地理位置列表
  • sharing_scope_legal_entity:可以共享数据资产的已同意实体列表

一个单独的 BigQuery 数据仓库包含具有以下表的 entitlement_management 数据集:

  • provider_agreement:与数据提供方的数据共享协议,包括商定的法律实体和地理位置范围。此数据是 shared_scope_geographysharing_scope_legal_entity 标记的默认值。
  • consumer_agreement:与数据使用者的数据共享协议,包括商定的法律实体和地理范围。每个协议都与数据资产的 IAM 绑定相关联。
  • use_purpose:使用目的,例如数据资产的用量说明和允许的操作
  • data_asset:数据资产的相关信息,例如资源名称和数据所有者的详细信息。

为了审核数据共享协议,BigQuery 会为每个数据集维护一个完整的审核跟踪记录,并针对每个数据集进行查询。审核跟踪存储在 BigQuery 信息架构作业视图中。将查询标签与会话相关联并在会话内运行查询后,您就可以收集具有该查询标签的查询的审核日志。如需了解详情,请参阅 BigQuery 的审核日志参考文档

下图显示了适用于此控制措施的服务。

控制措施 8 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个用于存储机密数据,另一个用于存储权益数据,其中包括提供方和消费者数据共享协议以及已获批准的使用目的。
  • Data Catalog 将提供方数据共享协议信息存储为标记。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • entitlement_management 数据集中是否存在数据资产的条目。
  • 是否对具有过期用例的敏感表执行操作(例如,consumer_agreement table 中的 valid_until_date 已通过)。
  • 是否使用不正确的标签键对敏感表执行操作。
  • 是否对具有空白或未经批准的用例标签值的敏感表执行操作。
  • 是否使用未经批准的操作方法(例如 SELECTINSERT)查询敏感表。
  • 使用者在查询敏感数据时指定的记录用途是否与数据共享协议匹配。

9. 数据受到保护,控制措施得到证明

此控制措施需要实现数据加密和去标识化,以帮助保护敏感数据并提供这些控制措施的记录。

此架构基于 Google 默认安全机制构建,其中包括静态加密。 此外,该架构支持您使用客户管理的加密密钥 (CMEK) 来管理自己的密钥。 借助 Cloud KMS,您可以使用软件支持的加密密钥或经过 FIPS 140-2 3 级验证的硬件安全模块 (HSM) 来加密数据。

该架构使用通过政策标记配置的列级动态数据遮盖,并将机密数据存储在单独的 VPC Service Controls 边界内。您还可以添加应用级去标识化,您可以在本地或在数据提取流水线的过程中实施。

默认情况下,该架构使用 HSM 实现 CMEK 加密,但也支持 Cloud External Key Manager (Cloud EKM)。

下表介绍了架构为 us-central1 区域实施的示例安全政策。您可以调整政策以满足自己的要求,包括为不同区域添加不同的政策。

数据敏感度 默认加密方法 其他允许的加密方法 默认去标识化方法 其他允许的去标识化方法
公开信息 默认加密 不限 不限
敏感的个人身份信息 具有 HSM 的 CMEK EKM 设为“Null” SHA-256 哈希或默认遮盖值
个人身份信息 具有 HSM 的 CMEK EKM SHA-256 哈希 Null 或默认遮盖值
敏感个人信息 具有 HSM 的 CMEK EKM 默认遮盖值 SHA-256 哈希或 Nullify
个人信息 具有 HSM 的 CMEK EKM 默认遮盖值 SHA-256 哈希或 Nullify

该架构使用 Data Catalog 将 encryption_method 标记添加到表级层 CDMC controls 标记模板。encryption_method 定义数据资产使用的加密方法。

此外,该架构还会创建一个 security policy template 标记,以标识应用于特定字段的去标识化方法。该架构使用通过动态数据遮盖应用的 platform_deid_method。您可以添加 app_deid_method,并且可以使用安全数据仓库蓝图中包含的 Dataflow 和敏感数据保护数据注入流水线对其进行填充。

下图显示了适用于此控制措施的服务。

控制措施 9 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • Dataflow 的两个可选实例,一个执行应用级去标识化,另一个执行重标识。
  • 三个 BigQuery 数据仓库:一个存储机密数据,一个存储非机密数据,第三个存储安全政策。
  • Data Catalog 存储加密和去标识化标记模板。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 发布的发现结果。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • 加密方法标记的值与指定的敏感度和位置允许的加密方法不匹配。
  • 表包含敏感列,但安全政策模板标记包含无效的平台级去标识化方法。
  • 表包含敏感列,但缺少安全政策模板标记。

10. 数据隐私框架得到定义和运作

此控制措施要求架构检查数据目录和分类,以确定您必须创建数据保护影响评估 (DPIA) 报告还是隐私影响评估 (PIA) 报告。不同地理位置和监管机构的隐私权评估差异很大。为了确定是否需要影响评估,架构必须考虑数据的驻留和数据主体的驻留。

该架构使用 Data Catalog 将以下标记添加到 Impact assessment 标记模板:

  • subject_locations:此资产中的数据引用的正文的位置。
  • is_dpia:是否已为此资产完成数据保护影响评估 (DPIA)。
  • is_pia:是否已完成此资产的隐私影响评估 (PIA)。
  • impact_assessment_reports:影响评估报告存储位置的外部链接。
  • most_recent_assessment:最近一次影响评估的日期。
  • oldest_assessment:第一次影响评估的日期。

Tag Engine 会将这些标记添加到每个敏感数据资产中,如控制措施 6 所定义。检测器根据 BigQuery 中的政策表验证这些标记,其中包括以下项的有效组合:数据驻留、主体位置、数据敏感度(例如,是否为 PII),以及所需的影响评估类型(PIA 或 DPIA)。

下图显示了适用于此控制措施的服务。

控制措施 10 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 四个 BigQuery 数据仓库存储以下信息:
    • 机密数据
    • 非机密数据
    • 影响评估政策和权益时间戳
    • 用于信息中心的标记导出
  • Data Catalog 将影响评估详细信息存储在标记模板中的标记中。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • 敏感数据的存在不包含影响评估模板。
  • 敏感数据的存在不包含 DPIA 或 PIA 报告链接。
  • 标记不符合政策表中的要求。
  • 影响评估早于使用方协议表中最近批准的数据资产权益。

11. 数据生命周期得到规划和管理

此控制措施需要能够检查所有数据资产以确定数据生命周期政策是否存在并得到遵循。

该架构使用 Data Catalog 将以下标记添加到 CDMC controls 标记模板:

  • retention_period:保留表的时间(以天为单位)
  • expiration_action:在保留期限结束时是否归档或完全清除表

默认情况下,该架构使用以下保留期限和到期操作:

数据类别 保留期限(天) 到期操作
敏感的个人身份信息 60 完全清除
个人身份信息 90 归档
敏感个人信息 180 归档
个人信息 180 归档

Record Manager 是 BigQuery 的一种开源资产,它会根据上述标记值和配置文件自动完全清除和归档 BigQuery 表。清除过程会设置表的到期日期,并使用在记录管理器配置中定义的到期时间创建快照表。默认情况下,30 天后便会到期。在软删除期间,您可以检索表。归档过程会为每个经过保留期限的 BigQuery 表创建一个外部表。该表以 Parquet 格式存储在 Cloud Storage 中,并升级到 BigLake 表,该表允许外部文件在 Data Catalog 中带有元数据标记。

下图显示了适用于此控制措施的服务。

控制措施 11 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个存储数据保留政策。
  • 两个 Cloud Storage 实例,一个提供归档存储,另一个存储记录。
  • Data Catalog 将保留期限和操作存储在标记模板和标记中。
  • 两个 Cloud Run 实例,一个运行记录管理器,另一个部署检测器。
  • 三个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
    • 另一个实例运行了记录管理器,可自动清除和归档 BigQuery 表。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • 对于敏感资产,请确保保留方法与资产位置的政策一致。
  • 对于敏感资产,请确保保留期限与资产位置的政策保持一致。

12. 数据质量得到管理

此控制措施需要能够根据数据剖析或用户定义的指标来衡量数据的质量。

此架构包括为单个值或聚合值定义数据质量规则的能力,以及为特定表列分配阈值。它包含正确性和完整性的标记模板。 Data Catalog 会为每个标记模板添加以下标记:

  • column_name:指标所适用的列的名称
  • metric:指标或质量规则的名称
  • rows_validated:已验证的行数
  • success_percentage:满足此指标的值所占的百分比
  • acceptable_threshold:此指标可接受的阈值
  • meets_threshold:质量得分(success_percentage 值)是否符合可接受的阈值
  • most_recent_run:指标或质量规则的最近运行时间

下图显示了适用于此控制措施的服务。

控制措施 12 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 三个 BigQuery 数据仓库:一个存储敏感数据,一个存储非敏感数据,第三个存储质量规则指标。
  • Data Catalog 会将数据质量结果存储在标记模板和标记中。
  • Cloud Scheduler 定义 Cloud Data Quality Engine 的运行时间。
  • 三个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
    • 第三个实例运行 Cloud Data Quality Engine
  • Cloud Data Quality Engine 定义数据质量规则并安排表和列的数据质量检查。
  • Pub/Sub 会发布发现结果。

Looker Studio 信息中心会显示表级别和列级别的数据质量报告。

为了检测与此控制措施相关的问题,架构包含以下发现结果:

  • 数据是敏感数据,但未应用数据质量标记模板(正确性和完整性)。
  • 敏感数据是敏感数据,但未将数据质量标记应用于敏感列。
  • 数据是敏感数据,但数据质量结果不在规则中设置的阈值范围内。
  • 数据不是敏感数据,数据质量结果不在规则设置的阈值范围内。

作为 Cloud Data Quality Engine 的替代方案,您可以配置 Dataplex 数据质量任务

13. 费用管理原则得到确立和应用

此控制措施需要能够根据政策要求和数据架构检查数据资产以确认费用使用情况。费用指标应全面且不限于存储空间的使用和移动。

该架构使用 Data Catalog 将以下标记添加到 cost_metrics 标记模板:

  • total_query_bytes_billed:自本月开始以来对此数据资产收费的查询字节数。
  • total_storage_bytes_billed:自本月开始以来对此数据资产收费的存储字节总数。
  • total_bytes_transferred:跨区域传输到此数据资产的字节总和。
  • estimated_query_cost:当月数据资产的估算查询费用(美元)。
  • estimated_storage_cost:当月数据资产的估算存储费用(美元)。
  • estimated_egress_cost:将数据资产用作目标表的当月的估算出站流量(美元)。

该架构将价格信息从 Cloud Billing 导出到名为 cloud_pricing_export 的 BigQuery 表。

下图显示了适用于此控制措施的服务。

控制措施 13 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • Cloud Billing 提供结算信息。
  • Data Catalog 将费用信息存储在标记模板和标记中。
  • BigQuery 通过其内置的 INFORMATION_SCHEMA 视图存储导出的价格信息和查询历史作业信息。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,此架构会检查敏感数据资产是否存在,而不关联费用指标。

14. 数据来源和沿袭得到了解

此控制措施需要能够检查数据资产自其来源的可追溯性以及对数据资产沿袭的任何更改。

为维护有关数据来源和沿袭的信息,该架构使用 Data Catalog 中的内置数据沿袭功能。此外,数据提取脚本会定义最终来源,并将该来源作为额外的节点添加到数据沿袭图表中。

为了满足此控制措施的要求,该架构使用 Data Catalog 将 ultimate_source 标记添加到 CDMC controls 标记模板。ultimate_source 标记定义此数据资产的来源。

下图显示了适用于此控制措施的服务。

控制措施 14 架构组件。

为了满足此控制措施的要求,该架构使用以下服务:

  • 两个 BigQuery 数据仓库:一个存储机密数据,另一个存储最终源数据。
  • Data Catalog 将最终来源存储在标记模板和标记中。
  • 数据注入脚本从 Cloud Storage 加载数据、定义最终来源并将来源添加到数据沿袭图表。
  • 两个 Cloud Run 实例,如下所示:
    • 一个实例运行 Report Engine,该 Compute Engine 会检查标记是否已应用并发布结果。
    • 另一个实例运行 Tag Engine,它会在受保护的数据仓库中标记数据。
  • Pub/Sub 会发布发现结果。

为了检测与此控制措施相关的问题,此架构包括以下检查:

  • 敏感数据经确定没有最终来源标记。
  • 未针对敏感数据资产填充沿袭图表。

标记引用

本部分介绍此架构用于满足 CDMC 主要控制措施要求的标记模板和标记。

表级 CDMC 控制措施标记模板

下表列出了属于 CDMC 控制措施标记模板且应用于表的标记。

标记 标记 ID 适用的主要控制措施
已批准的存储位置 approved_storage_location 4
已获批准的使用情形 approved_use 8
数据所有者电子邮件 data_owner_email 2
数据所有者名称 data_owner_name 2
加密方法 encryption_method 9
到期操作 expiration_action 11
有权威 is_authoritative 3
敏感 is_sensitive 6
敏感类别 sensitive_category 6
共享范围地理位置 sharing_scope_geography 8
共享范围法律实体 sharing_scope_legal_entity 8
保留期限 retention_period 11
最终来源 ultimate_source 14

影响评估标记模板

下表列出了属于影响评估标签模板且应用于表的标记。

标记 标记 ID 适用的主要控制措施
主体位置 subject_locations 10
DPIA 影响评估 is_dpia 10
PIA 影响评估 is_pia 10
影响评估报告 impact_assessment_reports 10
最近的影响评估 most_recent_assessment 10
最早的影响评估 oldest_assessment 10

费用指标标记模板

下表列出了属于费用指标标记模板且会应用于表的标记。

标记 标签 ID 适用的主要控制措施
估算的查询费用 estimated_query_cost 13
估算的存储费用 estimated_storage_cost 13
估算的出站流量费用 estimated_egress_cost 13
总查询字节数 total_query_bytes_billed 13
总存储字节数(计费) total_storage_bytes_billed 13
转移的总字节数 total_bytes_transferred 13

数据敏感度标记模板

下表列出了属于数据敏感度标记模板且应用于字段的标记。

标记 标记 ID 适用的主要控制措施
敏感字段 sensitive_field 6
敏感类型 sensitive_category 6

安全政策标记模板

下表列出了属于安全政策标记模板且应用于字段的标记。

标记 标记 ID 适用的主要控制措施
应用去标识化方法 app_deid_method 9
平台去标识化方法 platform_deid_method 9

数据质量标记模板

下表列出了属于完整性和正确性数据质量标记模板且应用于字段的标记。

标记 标记 ID 适用的主要控制措施
可接受的阈值 acceptable_threshold 12
列名 column_name 12
达到阈值 meets_threshold 12
指标 metric 12
最近运行 most_recent_run 12
已验证的行数 rows_validated 12
成功百分比 success_percentage 12

字段级 CDMC 政策标记

下表列出了属于 CDMC 敏感数据分类政策标记分类且应用于字段的政策标记。这些政策标记可限制字段级访问权限并启用平台级数据去标识化。

数据分类 标记名称 适用的主要控制措施
个人身份信息 personal_identifiable_information 7
个人信息 personal_information 7
敏感的个人身份信息 sensitive_personal_identifiable_information 7
敏感个人信息 sensitive_personal_data 7

预填充的技术元数据

下表列出了默认情况下 Data Catalog 中为所有 BigQuery 数据资产同步的技术元数据。

元数据 适用的主要控制措施
资源类型 -
创建时间 -
到期时间 11
位置 4
资源网址 3

后续步骤