使用 IAM 进行访问权限控制

本文档介绍了如何在 Dataplex Universal Catalog 中使用 Google Cloud 身份和访问权限管理 (IAM) 进行访问权限控制。

IAM 可在 Google Cloud 资源级控制对 Dataplex Universal Catalog 资源的访问权限。它用于确定哪些人可以管理 Dataplex Universal Catalog 资源,例如条目组和条目。您可以使用 Google Cloud API 和工具(例如Google Cloud 控制台、Google Cloud CLI 或客户端库)管理这些资源。

如需详细了解 IAM,请参阅 IAM 文档

IAM 概览

默认情况下,当您创建新的 Google Cloud 项目时,系统会向原始项目创建者授予 Owner 角色。默认情况下可能存在其他 Google 管理的服务账号,或者在您启用某个 API 来执行特定任务时,系统会创建此类账号。不过,其他任何个人用户都无权访问该项目及其资源,包括 Dataplex Universal Catalog 资源。只有在您明确将用户添加为项目成员或向其授予特定资源的相应角色时,才会授予此访问权限。

借助 IAM,您可以授予对特定 Google Cloud资源的精细访问权限,并防止对其他资源进行不必要的访问。借助 IAM,您只需授予对资源的必要访问权限,即可采用最小权限安全原则。

IAM 允许您控制(委托人)对哪些资源具有什么访问权限(角色)。

主账号

主账号可以是 Google 账号(针对最终用户)、服务账号(针对应用和虚拟机)、Google 群组或 Google Workspace 或 Cloud Identity 网域。这些主账号可以访问资源。授予角色时,您可以使用标识符来标识主账号,如政策绑定参考中所述。

如需了解详情,请参阅 IAM 概览:主账号

Dataplex Universal Catalog 服务代理

Dataplex Universal Catalog 使用一种称为服务代理的 Google Cloud 托管式服务账号来访问您的资源。启用 Dataplex API 后,系统会创建服务代理。该服务代理采用如下邮箱形式:

service-CUSTOMER_PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com

其中,CUSTOMER_PROJECT_NUMBER 是您已在其中启用 Dataplex API 的项目的项目编号。

Dataplex Universal Catalog 服务代理需要项目中的 Dataplex 服务代理 (roles/dataplex.serviceAgent) 角色才能管理 Dataplex Universal Catalog 资源。启用 API 时,系统会自动授予此角色。如果您撤销此角色,Dataplex Universal Catalog 可能无法正常运行。

资源

您可以在 Dataplex Universal Catalog 中授予访问权限的资源包括项目、条目组、条目、切面类型和条目类型。

某些 API 方法需要针对多个资源的权限。例如,将切面附加到条目需要同时获得条目和切面类型的权限。

角色

角色是一组权限的集合。权限决定了可以对资源执行的操作。如果您向某个主账号授予了某个角色,此主账号便拥有了该角色包含的所有权限。

您可以向主账号授予一个或多个角色。

与其他 Google Cloud 产品类似,Dataplex Universal Catalog 支持以下三种类型的角色:

  • 基本角色:在引入 IAM 之前就已存在的高度宽松的角色(Owner、Editor、Viewer)。如需详细了解基本角色,请参阅基本角色。

  • 预定义角色:可提供对特定 Google Cloud资源的精细访问权限。如需详细了解预定义角色,请参阅预定义角色Dataplex Universal Catalog IAM 角色文档详细介绍了 Dataplex Universal Catalog 预定义角色。

  • 自定义角色:通过仅授予所需的特定权限,帮助您强制执行最小权限原则。如需详细了解自定义角色,请参阅自定义角色

例如,Dataplex Viewer (roles/dataplex.viewer) 预定义角色提供对 Dataplex Universal Catalog 资源的只读访问权限。具有此角色的主账号可以查看条目组、条目、切面类型和条目类型,但无法创建、更新或删除它们。相反,Dataplex Universal Catalog 管理员 (roles/dataplex.admin) 角色授予对 Dataplex Universal Catalog 资源的广泛访问权限。

如需详细了解如何分配角色,请参阅授予、更改和撤销访问权限

如需确定特定任务所需的权限,请参阅 Dataplex Universal Catalog 角色Dataplex Universal Catalog 权限的参考页面。

例如,您可以为 Google 账号分配项目资源的 roles/dataplex.admin 角色。此后,该账号便可管理项目中的 Dataplex Universal Catalog 资源,但无法管理其他资源。您还可以使用 IAM 来管理向项目团队成员授予的基本角色。

资源的 IAM 政策

通过 IAM 政策,您可以管理资源的 IAM 角色,用于取代或补充在项目级层管理角色。这样一来,您便可灵活应用最小权限原则,例如,仅向协作者授予其工作所需的特定资源的访问权限。

资源会沿用其父级资源的政策。如果在项目级层设置政策,则项目的所有子资源都会沿用该政策。资源的有效政策是为该资源设置的政策及其从层次结构中更高层级沿用而来的政策的集合。如需了解详情,请参阅 IAM 政策层次结构

您可以使用 Google Cloud 控制台、Identity and Access Management API 或 gcloud CLI 来获取和设置 IAM 政策。

后续步骤