使用 Dataplex Universal Catalog Attribute Store

本文档介绍了如何使用 Dataplex Universal Catalog Attribute Store。

从 Attribute Store 迁移到标记和 IAM 条件

如需从 Attribute Store 迁移,您需要使用标记、政策标记和 IAM 条件来替换 Attribute Store 的功能。

Attribute Store 概览

Dataplex Universal Catalog Attribute Store 是一个可扩展的基础设施,可让您为关联资源指定政策相关行为。Dataplex Universal Catalog 管理员可以使用 Attribute Store,通过将数据与属性相关联来定义应如何处理特定数据。

借助 Attribute Store,您可以向对象(例如列)添加多个属性。Attribute Store 会合并与对象关联的所有属性的行为,并将其作为底层资源的单个政策呈现。

您可以为已发布的数据集设置属性。已发布的数据集是指由 Dataplex Universal Catalog 根据存储桶资产中发现的表创建的数据集。

支持以下政策行为:

  • 资源规范:指定对资源(例如表)的访问权限
  • 列规范:指定对 BigQuery 表中列的访问权限

您可以使用 Attribute Store 定义称为分类的属性层次结构。在分类中,子级属性会继承父级属性层次结构的规范。父级规范和子级规范会合并为一个统一的列表,并传播到资源。

您可以使用 Dataplex Universal Catalog Attribute Store 执行以下操作:

  • 创建分类。
  • 创建属性并按层次结构进行整理。
  • 将一个或多个属性与表相关联。
  • 将一个或多个属性与列相关联。

术语

本部分介绍了本文档中使用的术语。

属性分类

数据分类是一种属性层次结构。在分类中,父级节点中的属性允许其下方的属性(子级属性)继承父级属性的行为规范,并将其添加到自己的行为规范中。

例如:如果名为 PII 的属性具有资源规范 group-a@company.com,且 PII 的子级属性(名为 Social Security numbers)具有资源规范 group-b@company.com,则应用于与属性 Social Security numbers 相关联的政策的资源规范将为 group-a@company.comgroup-b@company.com

定义属性时,您可以选择该属性是父级属性还是子级属性。定义子级属性时,您必须指定其父级属性。

列规范

列的行为规范。它指定了对列具有读取者访问权限的用户或群组。如果您将包含列规范的属性与表列相关联,则系统会向该列添加 BigQuery 列政策标记

资源规范

人员或群组访问资源(表)的权限。如果您将属性与资源规范相关联,Dataplex Universal Catalog 会将 IAM 角色传播给指定的用户,以便他们访问与该属性关联的表。

准备工作

限制

Dataplex Universal Catalog 会将列规范政策作为 BigQuery 政策标记传播。BigQuery 限制每列只能有一个政策标记。如果列上已存在政策标记,则 Dataplex Universal Catalog 会在管理标签页上的“治理”日志中抛出错误。

配额

以下是适用于 Dataplex Universal Catalog Attribute Store 的配额和限制:

限制 默认值
一个区域中的分类数量上限 100
一个区域中的所有分类的属性数量上限 10000
可与资源(表)关联的属性数量上限 50
可与列关联的属性数量上限 100
属性分类中每个数据属性树的深度上限 4

所需的角色

如需获得使用 Dataplex Universal Catalog Attribute Store 所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

这些预定义角色可提供使用 Dataplex Universal Catalog Attribute Store 所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

使用 Dataplex Universal Catalog Attribute Store 需要以下权限:

  • 管理分类和属性:
    • dataplex.datataxonomies.*
    • dataplex.dataattributes.* (except dataplex.dataattributes.configureResourceAccess and dataplex.dataattributes.configureDataAccess)
  • 查看与资源和属性相关联的绑定:
    • dataplex.datataxonomies.get
    • dataplex.datataxonomies.list
    • dataplex.dataattributes.get
    • dataplex.dataattributes.list
    • dataplex.dataattributebindings.get
    • dataplex.dataattributebindings.list
  • 在项目中创建和管理绑定资源: dataplex.dataattributebindings.*
  • 管理资源和数据访问权限规范:
    • dataplex.datataxonomies.configureResourceAccess
    • dataplex.datataxonomies.configureDataAccess

您也可以使用自定义角色或其他预定义角色来获取这些权限。

应用场景示例

假设有一家名为 ACME 的公司,该公司有三种类型的数据:

  • Red 敏感数据
  • Green 受限但敏感程度较低的数据
  • 未分类的数据

ACME 的 Dataplex Universal Catalog 管理员创建了以下一组属性:

  • 属性:Red

    • 列规范:具有读取权限的 secrets_team@acme
    • 资源规范:具有读取权限的 secrets_team@acmetenured_employees@acme
  • 属性:Green

    • 列规范:具有读取权限的 full_time_employees@acme
    • 资源规范:具有修改权限的 full_time_employees@acme

此图片包含“红色”和“绿色”属性的列和资源规范。

属性 RedGreen 可根据与表及其列相关联的属性来控制对资源(表)的访问行为。

假设一个表包含以下列:

  • ID
  • 邮编
  • 名称
  • 地址
  • $Value

应用场景 1:将同一属性与表和列相关联

此图片展示了与表和“名称”列相关联的属性“红色”。

如果您将属性 Red 与表及其名称列相关联,则 Dataplex Universal Catalog 会传播以下政策:

  • secrets_team@acmetenured_employees@acme 中的员工可以读取该表、查看其元数据并查询该表。
  • 只有 secrets_team@acme 中的员工才能查询名称列,因为该列还受到列规范的进一步保护。

应用场景 2:组合属性

请考虑以下关联:

  • 将属性 RedGreen 与表相关联。
  • 将属性 RedGreen名称列相关联。
  • 将属性 Red 与列 $Value 相关联。

此图片展示了与表和“名称”列关联的属性“红色”和“绿色”,以及与列“$value”关联的属性“红色”

在这种情况下,Dataplex Universal Catalog 会传播以下政策:

  • secrets_team@acmetenured_employees@acmefull_time_employees@acme 中的员工可以访问表。这是因为 Dataplex Universal Catalog 会合并属性 RedGreen 的资源规范。
  • secrets_team@acmefull_time_employees@acme 中的员工都可以访问名称列。这是因为 Dataplex Universal Catalog 会合并属性 RedGreen 的列规范。
  • 只有 secrets_team@acme 中的员工才能查询 $Value 列。

应用场景 3:按层次结构整理属性

您可以通过指定属性的子类型,按层次结构整理属性。请考虑以下一组属性:

父级属性 1
属性:PII

  • 列规范:secrets_team@acme
  • 资源规范:secrets_team@acmetenured_employees@acme

PII 的子级属性
属性:Email

  • 列规范:email_comm@acme
  • 资源规范:email_comm@acme

父级属性 2
属性:Financial

  • 列规范:full_time_employees@acme
  • 资源规范:full_time_employees@acme

此图片展示了属性层次结构示例。

请考虑以下关联:

  • 将属性 EmailFinancial 与表相关联。
  • 将属性 EmailFinancial名称列相关联。
  • 将属性 PII 与列 $Value 相关联。

此图片展示了如何将层次结构中的属性与表和列相关联。

在这种情况下,Dataplex Universal Catalog 会传播以下政策:

  • secrets_team@acmetenured_employees@acmefull_time_employees@acmeemail_comm@acme 中的员工可以访问表。这是因为 Dataplex Universal Catalog 会合并属性 FinancialEmail 的资源规范,并且属性 Email 会继承属性 PII 的规范。
  • secrets_team@acmeemail_comm@acmefull_time_employees@acme 中的员工可以访问名称列。这是因为 Dataplex Universal Catalog 会合并属性 FinancialEmail 的列规范。
  • 只有 secrets_team@acme 中的员工才能查询 $Value 列。

设置属性

如需创建属性,您必须先创建分类,然后创建父级和子级数据属性。

创建数据属性分类

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 点击创建分类

  3. 输入分类名称ID说明

  4. 选择区域。

  5. 点击提交

    新分类会显示在数据分类页面上。

创建父级属性

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 数据分类页面上,点击要在其中创建父级属性的分类。

  3. 分类详情页面上,点击添加数据属性

  4. 选择创建父级数据属性

  5. 输入父级属性的名称、ID 和说明。

  6. 可选:设置属性规范。

    1. 设置资源规范:

      1. 点击资源对应的管理权限
      2. 点击添加
      3. 新的主账号字段中,输入需要访问相应资源的人员或群组的邮箱。
      4. 选择所需的角色,然后点击保存
      5. 点击保存
    2. 设置列规范:

      1. 点击对应的管理权限
      2. 点击添加
      3. 新的主账号字段中,输入需要访问相应列的人员或群组的邮箱。
      4. 选择所需的角色,然后点击保存
      5. 点击保存
  7. 点击创建

创建子级属性

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 数据分类页面上,点击要在其中创建子级属性的分类。

  3. 分类详情页面上,点击添加数据属性

  4. 选择创建子级数据属性

  5. 为要创建的子级属性选择一个父级数据属性

  6. 输入子级属性的名称、ID 和说明。

  7. 可选:设置属性规范。

    1. 设置资源规范:

      1. 点击资源对应的管理权限
      2. 点击添加
      3. 新的主账号字段中,输入需要访问相应资源的人员或群组的邮箱。
      4. 选择所需的角色,然后点击保存
      5. 点击保存
    2. 设置列规范:

      1. 点击对应的管理权限
      2. 点击添加
      3. 新的主账号字段中,输入需要访问相应列的人员或群组的邮箱。
      4. 选择所需的角色,然后点击保存
      5. 点击保存
  8. 点击创建

更新 Attribute Store 资源

更新分类详情

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 点击要更新的分类。

  3. 点击修改

  4. 根据需要修改分类名称及其说明。

  5. 点击提交

更新属性详情

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 点击包含要更新的属性的分类。

  3. 点击要更新的属性。

  4. 如需更新属性名称和说明,请点击修改

    1. 如果您要更新父级属性,可以选择将其更新为子级属性,反之亦然。请相应地选择选项。
    2. 根据需要修改属性名称及其说明。
    3. 点击更新
  5. 如需更新相应属性的资源规范,请点击资源规范对应的 修改

    1. 如需添加新的主账号,请按照以下步骤操作:

      1. 点击添加
      2. 新的主账号字段中,输入需要访问相应资源的人员或群组的邮箱。
      3. 选择所需的角色
      4. 点击保存
    2. 如需更新现有主账号,请按照以下步骤操作:

      1. 对于要更新的主账号,点击 修改
      2. 选择所需的角色
      3. 点击保存
    3. 如需移除现有主账号,请按照以下步骤操作:

      1. 选择要移除的主账号。
      2. 点击移除
  6. 如需更新属性的列规范,请点击列规范对应的 修改

    1. 如需添加新的主账号,请按照以下步骤操作:

      1. 点击添加
      2. 新的主账号字段中,输入需要访问相应列的人员或群组的邮箱。
      3. 选择所需的角色
      4. 点击保存
    2. 如需更新现有主账号,请按照以下步骤操作:

      1. 对于要更新的主账号,点击 修改
      2. 选择所需的角色
      3. 点击保存
    3. 如需移除现有主账号,请按照以下步骤操作:

      1. 选择要移除的主账号。
      2. 点击移除

将属性与资源相关联

将属性与表相关联

  1. 在 Google Cloud 控制台中,前往 Dataplex Universal Catalog Attribute Store 页面。

    前往 Attributes Store

  2. 点击包含相应属性的分类。

  3. 点击要与表关联的属性。

  4. 点击资源标签。

  5. 点击添加资源

  6. 从列表中选择一个表。

  7. 点击选择

将属性与列相关联

  1. 在 Google Cloud 控制台中,前往 Data Catalog 搜索页面。

    转到搜索

  2. 搜索并选择要针对其将属性与列相关联的表。

  3. 点击架构和列标记标签页。

  4. 对于要关联属性的列,请在政策标记中点击 添加

  5. 选择包含该属性的分类。

  6. 选择该属性。

  7. 点击附加

后续步骤