用于精细访问权限的 IAM 条件

本页面介绍如何使用 IAM 条件来限制对连接的访问权限。

通过 IAM 条件,您可以精细控制 Integration Connectors 资源。默认情况下, Integration Connectors 用户或角色 可以对连接执行所有受支持的操作。通过使用 IAM 条件,您可以 限制特定用户或角色仅对连接执行选定的操作。例如,您可以限制用户 ,使其只能修改名称以 test-connection 开头的连接,并且无权对连接执行其他操作,例如 订阅事件或查看架构元数据。

准备工作

Integration Connectors 使用 Google Cloud 的 Identity and Access Management (IAM) 来管理 Integration Connectors 资源的角色和权限。因此,在 IAM 中为您的 Integration Connectors 资源指定或修改条件之前,请先熟悉以下 IAM 概念:

添加 IAM Conditions 条件

如需将 IAM Conditions 条件添加到 Integration Connectors 资源,您需要以下信息:

示例

下表列出了您可以为 Integration Connectors 用户或角色应用的示例资源条件。

IAM 资源条件 说明
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection"))
|| resource.type != "connectors.googleapis.com/Connection"
您向其应用此条件的用户或角色只能执行以下操作:
  • 列出所有连接。
  • 对名称以 marketing- 开头的连接执行获取、创建、更新和删除操作。
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection") ||
(resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/ConnectionSchemaMetadata")
|| (resource.type != "connectors.googleapis.com/Connection" 
&& resource.type != "connectors.googleapis.com/ConnectionSchemaMetadata") 
您向其应用此条件的用户或角色只能执行以下操作:
  • 列出所有连接。
  • 仅对 名称以 marketing- 开头的连接执行获取、创建、更新和删除操作。
  • 仅对 名称以 marketing- 开头的连接获取连接架构元数据。

为 Application Integration 服务账号添加 IAM 条件

您可以将 IAM 条件应用于 Application Integration 服务帐号,这样您就可以限制服务帐号在集成执行期间可以访问的连接 。例如,您可以限制服务帐号,使其只能访问名称以 marketing- 开头的连接。如需了解详情,请参阅将 IAM 条件应用于服务账号 。

下表列出了您可以为 Application Integration 服务帐号应用的示例资源条件。

IAM 资源条件 说明
resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-")
您向其应用此条件的服务帐号只能运行名称以 marketing- 开头的连接。

后续步骤

浏览 IAM 文档中的以下信息: