本文档介绍了如何使用 Dataplex 属性存储。
Dataplex 属性存储是一个可扩展的基础架构,可让您指定关联资源的政策相关行为。Dataplex 管理员可以使用属性存储将数据与属性相关联,从而定义应如何处理特定数据。
利用属性存储的主要好处是您可以向对象(例如列)添加多个属性。属性存储合并了与某个对象关联的所有属性的行为,并在底层资源上将其表示为单个政策。
您可以将属性设置为已发布的数据集。已发布的数据集是指 Dataplex 根据在存储桶资产中发现的表创建的数据集。
支持以下政策行为:
- 资源规范:指定对表等资源的访问权限。
- 列规范:指定对 BigQuery 表中列的访问权限。
您可以使用属性存储来定义名为分类的属性层次结构。在分类中,子属性会继承父属性层次结构的规范。来自父级和子级的规范合并为一个统一的列表,该列表会传播到资源。
您可以使用 Dataplex 属性存储执行以下操作:
- 创建分类。
- 创建属性并以层次结构进行整理。
- 将一个或多个属性与表相关联。
- 将一个或多个属性与列相关联。
术语
本文档中使用了以下术语:
属性分类
数据分类是属性的层次结构。在分类中,父节点中的属性允许其次级属性(子属性)继承父属性的行为规范,并将其添加到其自己的行为规范中。
例如:如果名为 PII
的属性具有资源规范 group-a@company.com
,并且名为 Social Security numbers
的 PII
子属性具有资源规范 group-b@company.com
,则应用于与该属性 Social Security numbers
关联的政策的资源规范将为 group-a@company.com
和 group-b@company.com
。
定义属性时,您可以选择是父属性还是子属性。定义子属性时,您必须指定其父属性。
列规范
列的行为规范。它指定拥有列读取者访问权限的人员或群组。如果您将包含列规范的属性与表的列相关联,则会向该列添加 BigQuery 列政策标记。
资源规范
用户或群组访问资源(表)的权限。 如果将特性与资源规范相关联,Dataplex 会将 IAM 角色传播给指定用户,以访问与该属性关联的表。
准备工作
限制
Dataplex 将列规范政策传播为 BigQuery 政策标记。对于 BigQuery,每列只能有一个政策标记。如果列中已存在政策标记,Dataplex 会在管理标签页的治理日志中抛出错误。
配额
以下是适用于 Dataplex 属性存储区的配额和限制:
限额 | 默认 |
---|---|
一个区域中的分类数量上限 | 100 |
一个区域中所有分类中的属性数量上限 | 10,000 |
可与资源(表)关联的特性数上限 | 50 |
可以与列相关联的属性数上限 | 100 |
属性分类中每个数据属性树的最大深度 | 4 |
所需的角色和权限
如需获取使用 Dataplex 属性存储区所需的权限,请让管理员授予您项目的以下 IAM 角色:
-
管理分类和属性:
Dataplex Taxonomy Admin (
roles/dataplex.taxonomyAdmin
) -
查看与资源和属性关联的绑定:
Dataplex Taxonomy Viewer (
roles/dataplex.taxonomyViewer
) -
在项目中创建和管理绑定资源:
-
Dataplex Binding Admin (
roles/dataplex.bindingAdmin
) -
Dataplex Admin(对区域资源拥有
roles/dataplex.admin
权限)
-
Dataplex Binding Admin (
-
管理资源和数据访问规范:
Dataplex Security Admin (
roles/dataplex.securityAdmin
)
如需详细了解如何授予角色,请参阅管理访问权限。
这些预定义角色包含使用 Dataplex 属性存储区所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
如需使用 Dataplex 属性存储区,您需要拥有以下权限:
-
管理分类和属性:
-
dataplex.datataxonomies.*
-
dataplex.dataattributes.*
(exceptdataplex.dataattributes.configureResourceAccess
anddataplex.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 管理员会创建以下属性集:
属性:
Red
- 列规范:具有读取权限的
secrets_team@acme
- 资源规范:具有读取权限的
secrets_team@acme
和tenured_employees@acme
- 列规范:具有读取权限的
属性:
Green
- 列规范:具有读取权限的
full_time_employees@acme
- 资源规范:具有修改权限的
full_time_employees@acme
- 列规范:具有读取权限的
Red
和 Green
属性根据与表及其列关联的属性来控制对资源(表)的访问行为。
假设某个表包含以下列:
- ID
- 邮政编码
- 名称
- 地址
- $Value
用例 1:将同一属性与表和列相关联
如果将属性 Red
与表及其列名称相关联,则 Dataplex 会传播以下政策:
secrets_team@acme
和tenured_employees@acme
中的员工可以读取表、查看其元数据和查询表。- 只有
secrets_team@acme
中的员工可以查询 Name 列,因为它受到列规范的进一步保护。
用例 2:合并属性
请考虑以下关联:
- 将属性
Red
和Green
与表相关联。 - 将属性
Red
和Green
与名称列相关联。 - 将属性
Red
与 $Value 列相关联。
在这种情况下,Dataplex 会传播以下政策:
secrets_team@acme
、tenured_employees@acme
和full_time_employees@acme
中的员工可以访问该表。这是因为 Dataplex 合并了属性Red
和Green
的资源规范。secrets_team@acme
和full_time_employees@acme
中的员工都可以访问 Name 列。这是因为 Dataplex 合并了属性Red
和Green
的列规范。- 只有
secrets_team@acme
中的员工可以查询 $Value 列。
用例 3:整理层次结构中的属性
您可以通过指定属性的子类型来整理层次结构中的属性。请考虑以下属性集:
父级属性 1:
属性:PII
- 列规范:
secrets_team@acme
- 资源规范:
secrets_team@acme
和tenured_employees@acme
PII
的子属性:
属性:Email
- 列规范:
email_comm@acme
- 资源规范:
email_comm@acme
父级属性 2:
属性:Financial
- 列规范:
full_time_employees@acme
- 资源规范:
full_time_employees@acme
请考虑以下关联:
- 将属性
Email
和Financial
与表相关联。 - 将属性
Email
和Financial
与名称列相关联。 - 将属性
PII
与 $Value 列相关联。
在这种情况下,Dataplex 会传播以下政策:
secrets_team@acme
、tenured_employees@acme
、full_time_employees@acme
和email_comm@acme
中的员工可以访问该表。这是因为 Dataplex 合并了属性Financial
和Email
的资源规范,而属性Email
继承了属性PII
的规范。secrets_team@acme
、email_comm@acme
和full_time_employees@acme
中的员工可以访问名称列。这是因为 Dataplex 合并了属性Financial
和Email
的列规范。- 只有
secrets_team@acme
中的员工可以查询 $Value 列。
设置属性
如需创建属性,您必须先创建分类,然后创建父数据属性和子数据属性。
创建数据属性分类
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
点击创建分类。
输入分类名称、ID 和说明。
请选择区域。
点击提交。
新分类会显示在数据分类页面上。
创建父属性
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
在数据分类页面上,点击要在其中创建父属性的分类。
在分类详情页面上,点击添加数据属性。
选择创建父级数据特性。
为父级属性输入名称、ID 和说明。
可选:设置属性规范。
设置资源规范:
- 点击资源对应的管理权限。
- 点击添加。
- 在新的主账号字段中,输入需要访问该资源的个人或群组的电子邮件地址。
- 选择所需的角色,然后点击保存。
- 点击保存。
设置列规范:
- 点击列对应的管理权限。
- 点击添加。
- 在新的主账号字段中,输入需要访问该列的个人或群组的电子邮件地址。
- 选择所需的角色,然后点击保存。
- 点击保存。
点击创建。
创建子属性
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
在数据分类页面上,点击要在其中创建子属性的分类。
在分类详情页面上,点击添加数据属性。
选择创建子级数据特性。
为您要创建的子属性选择父级数据属性。
为子属性输入名称、ID 和说明。
可选:设置属性规范。
设置资源规范:
- 点击资源对应的管理权限。
- 点击添加。
- 在新的主账号字段中,输入需要访问该资源的个人或群组的电子邮件地址。
- 选择所需的角色,然后点击保存。
- 点击保存。
设置列规范:
- 点击列对应的管理权限。
- 点击添加。
- 在新的主账号字段中,输入需要访问该列的个人或群组的电子邮件地址。
- 选择所需的角色,然后点击保存。
- 点击保存。
点击创建。
更新 Attribute Store 资源
更新分类详细信息
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
点击要更新的类目。
点击修改。
根据需要修改分类名称及其说明。
点击提交。
更新属性详情
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
点击包含要更新的属性的分类。
点击要更新的属性。
要更新属性名称和说明,请点击修改。
- 如果您要更新父属性,可以选择将其更新为子属性,反之亦然。选择相应的选项。
- 根据需要修改属性名称及其说明。
- 点击更新。
如需更新属性的资源规范,请点击资源规范对应的
。如需添加新的主账号,请按以下步骤操作:
- 点击添加。
- 在新的主账号字段中,输入需要访问该资源的个人或群组的电子邮件地址。
- 选择所需的角色。
- 点击保存。
如需更新现有主账号,请按以下步骤操作:
- 点击要更新的主帐号对应的 。
- 选择所需的角色。
- 点击保存。
如需移除现有主账号,请按以下步骤操作:
- 选择要移除的主账号。
- 点击移除。
如需更新属性的列规范,请点击列规范中的
。如需添加新的主账号,请按以下步骤操作:
- 点击添加。
- 在新的主账号字段中,输入需要访问该列的个人或群组的电子邮件地址。
- 选择所需的角色。
- 点击保存。
如需更新现有主账号,请按以下步骤操作:
- 点击要更新的主帐号对应的 。
- 选择所需的角色。
- 点击保存。
如需移除现有主账号,请按以下步骤操作:
- 选择要移除的主账号。
- 点击移除。
将特性与资源相关联
将特性与表相关联
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
点击包含该属性的类目。
点击要与表关联的属性。
点击资源标签页。
点击添加资源。
从列表中选择一个表。
点击选择。
将属性与列相关联
在 Google Cloud 控制台中,前往 Dataplex 属性存储页面。
搜索并选择要将属性与列相关联的表。
点击架构和列标记标签页。
在要与属性关联的列的政策标记中,点击
。选择包含该属性的类目。
选择属性。
点击附加。
后续步骤
- 详细了解 Dataplex 安全性。
- 详细了解 Dataplex 中的政策管理。
- 详细了解 Dataplex IAM 角色。