确保您的数据湖安全无虞

通过 Dataplex 安全模型,您可以管理哪些人有权执行以下任务:

  • 管理数据湖(创建和附加资产、区域及其他数据湖)
  • 通过映射资产访问连接到数据湖的数据(Cloud Storage 存储分区和 BigQuery 数据集等 Google Cloud 资源)
  • 访问连接到数据湖的数据的相关元数据

数据湖的管理员通过授予以下基本角色和预定义角色来控制对 Dataplex 资源(数据湖、可用区和资产)的访问权限。

基本角色

角色 说明
Dataplex Viewer
(roles/dataplex.viewer)
能够查看(但不能修改)数据湖及其已配置的可用区和资产。
Dataplex Editor
(roles/dataplex.editor)
能够修改数据湖。可以创建和配置数据湖、区域、资产和任务。
Dataplex Administrator
(roles/dataplex.administrator)
能够全面管理数据湖。
Dataplex 开发者
(roles/dataplex.developer)
能够在数据湖上运行数据分析工作负载。 *
* 如需查询 BigQuery 表,您需要拥有运行 BigQuery 作业的权限。在要针对作业的计算支出进行归因或付费的项目中设置此权限。如需了解详情,请参阅 BigQuery 预定义角色和权限
如需运行 Spark 作业,请创建 Dataproc 集群,并在要分配计算角色的项目中提交 Dataproc 作业。

预定义角色

Google Cloud 管理以下角色,这些角色为 Dataplex 提供精细访问权限。

元数据角色

元数据角色可以查看元数据,例如表架构。

角色 说明
Dataplex 元数据写入者
(roles/dataplex.metadataWriter)
能够更新特定资源的元数据。
Dataplex 元数据读取者
(roles/dataplex.metadataReader)
能够读取元数据(例如,查询表)。

数据角色

向主账号授予数据角色后,主账号将能够在数据湖资产所指向的底层资源中读取或写入数据。

Dataplex 将其角色映射到每个底层存储资源(Cloud Storage、BigQuery)的数据角色。

Dataplex 转换 Dataplex 数据角色并将其传播到底层存储资源,从而为每个存储资源设置正确的角色。好处是您可以在数据湖层次结构(例如数据湖)上授予单个 Dataplex 数据角色,并且 Dataplex 会保留对该数据湖关联的所有资源(例如,底层可用区中的资产引用 Cloud Storage 存储分区和 BigQuery 数据集)的数据的指定访问权限。

例如,如果为主账号授予某个数据湖的 dataplex.dataWriter 角色,则主账号可以对该数据湖内的所有数据及其底层可用区和资产拥有写入权限。在较低级别(可用区)授予的数据访问角色会在数据湖层次结构中继承到底层资产。

角色 说明
Dataplex Data Reader
(roles/dataplex.dataReader)
能够从附加到资产的存储空间中读取数据,包括存储分区和 BigQuery 数据集(及其内容)。*
Dataplex Data Writer
(roles/dataplex.dataWriter)
能够向资产所指向的底层资源写入数据。 *
Dataplex Data Owner
(roles/dataplex.dataOwner)
向底层资源授予 Owner 角色,包括管理子资源的权限。例如,作为 BigQuery 数据集的数据所有者,您可以管理底层表。

确保您的数据湖安全无虞

您可以保护和管理对数据湖及其关联数据的访问权限。在 Google Cloud 控制台中,使用以下任一视图:

  • 权限标签页下的 Dataplex 管理视图中,或
  • Dataplex Secure 视图

使用管理视图

权限标签页可让您管理对数据湖资源的所有权限,并显示包含所有权限(包括继承的权限)的未经过滤的视图。

如需保护您的数据湖,请按以下步骤操作:

  1. 前往 Google Cloud 控制台中的 Dataplex。

    进入 Dataplex

  2. 进入管理视图。

  3. 点击您创建的数据湖的名称。

  4. 点击权限标签页。

  5. 点击按角色查看标签页。

  6. 点击添加以添加新角色。添加 Dataplex Data ReaderData WriterData Owner 角色。

  7. 验证是否显示 Dataplex Data ReaderData WriterData Owner 角色。

使用 Secure 视图

Google Cloud 控制台中的 Dataplex Secure 视图提供以下各项:

  • 一个简单且可过滤的视图,仅显示以特定资源为中心的 Dataplex 角色。
  • 将数据角色与数据湖资源角色分开。
未从更高级别数据湖资源继承的数据权限示例
图 1:在这个数据湖示例中,两个主帐号对名为“Cloud Storage 数据(GCS 数据)”的资产都拥有数据权限。这些权限不是从更高级别数据湖资源继承的。


未从更高级别数据湖资源继承的权限示例
图 2:此示例显示:
  1. 从项目继承 Dataplex Administrator 角色的服务帐号。
  2. 从项目继承 Dataplex Editor 和 Viewer 角色的主帐号(电子邮件地址)。这些角色适用于所有资源。
  3. 从项目继承 Dataplex Administrator 角色的主帐号(电子邮件地址)。

政策管理

指定安全政策后,Dataplex 会将权限传播到代管式资源的 IAM 政策。

在数据湖级别配置的安全政策将传播到该数据湖内管理的所有资源。Dataplex 可以在 Dataplex 管理 > 权限标签页上提供传播状态和这些大规模传播的可见性。它会持续监控代管资源,确定 Dataplex 外部 IAM 政策是否发生任何更改。

在某项资源附加到 Dataplex 数据湖后,已对该资源拥有权限的用户将继续拥有该资源的权限。同样,在将资源附加到 Dataplex 后创建或更新的非 Dataplex 角色绑定保持不变。

设置列级、行级和表级政策

Cloud Storage 存储桶资源附加了关联的 BigQuery 外部表

您可以升级 Cloud Storage 存储桶资源,这意味着 Dataplex 会移除附加的外部表并改为附加 BigLake 表

您可以使用 BigLake 表(而不是外部表)来提供精细的访问权限控制,包括行级控制列级控制列数据遮盖

元数据安全性

元数据主要是指与存在于数据湖管理的资源中的用户数据相关联的架构信息。

Dataplex Discovery 会检查代管资源中的数据并提取表格架构信息。这些表会发布到 BigQuery、Dataproc Metastore 和 Data Catalog 系统。

BigQuery

每个发现的表都有一个在 BigQuery 中注册的关联表。对于每个地区,都有一个关联的 BigQuery 数据集,与该数据区域中发现的表关联的所有外部表都注册到该数据集下。

发现的 Cloud Storage 托管的表会注册到为区域创建的数据集下。

Dataproc Metastore

数据库和表可在与 Dataplex 数据湖实例关联的 Dataproc Metastore 中使用。每个数据区域都有一个关联的数据库,而每个资产可以有一个或多个关联的表。

您可以通过配置 VPC-SC 网络来保护 Dataproc Metastore 服务中的数据。数据湖创建期间会向 Dataplex 提供 Dataproc Metastore 实例,这已使其成为用户管理的资源。

Data Catalog

每个发现的表在 Data Catalog 中都有一个关联条目,用于启用搜索和发现功能。

由于 Data Catalog 需要在条目创建过程中使用 IAM 政策名称,因此 Dataplex 会提供应与该条目关联的 Dataplex 资产资源的 IAM 政策名称。因此,对 Dataplex 条目的权限由对资产资源的权限驱动。针对资源授予 Dataplex Metadata Reader 角色 (roles/dataplex.metadataReader) 和 Dataplex Metadata Writer 角色 (roles/dataplex.metadataWriter)。

后续步骤