Condiciones de IAM para el acceso detallado

En esta página, se describe cómo restringir el acceso a tus conexiones con las condiciones de IAM.

Una condición de IAM te permite tener control detallado sobre tus recursos de Integration Connectors. De forma predeterminada, un usuario o un rol de Integration Connectors puede realizar todas las operaciones admitidas en una conexión. Con las condiciones de IAM, puedes restringir a un usuario o rol específico para que solo realice operaciones seleccionadas en una conexión. Por ejemplo, puedes restringir a un usuario de modo que solo pueda modificar las conexiones cuyo nombre comience con test-connection y no tenga otros permisos en las conexiones, como suscribirse a eventos o ver los metadatos del esquema.

Antes de comenzar

Integration Connectors usa Identity and Access Management (IAM) de Google Cloud para administrar los roles y los permisos de los recursos de Integration Connectors. Por lo tanto, antes de especificar o modificar las condiciones en IAM para tus recursos de Integration Connectors, familiarízate con los siguientes conceptos de IAM:

Agrega condiciones de IAM

Para agregar una condición de IAM a un recurso de Integration Connectors, necesitas la siguiente información:

  • URI de recurso con nombre: Cada recurso en Integration Connectors tiene un URI de recurso único. Por ejemplo, el URI del recurso de conexión es projects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/{connection_name}. Para obtener la lista completa de todos los URI disponibles, consulta los recursos de REST de Integration Connectors. Para controlar los permisos de acceso de un recurso en un nivel detallado, debes asignar un nombre a tu recurso de acuerdo con una convención de nombres. Según tus requisitos, puedes decidir qué convención de nombres deseas usar. Por ejemplo, puedes anteponer la palabra marketing- a todas las conexiones que pertenecen al equipo de marketing. En este ejemplo, el URI del recurso para las conexiones del equipo de marketing comenzará con projects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/marketing-.
  • Permisos solo para superiores: verifica si un recurso o cualquiera de sus recursos secundarios requieren el permiso solo para superiores. Para obtener más información, consulta Permisos solo para superiores.
  • Tipo de recurso: Para limitar aún más el alcance de los recursos, filtra por un tipo de recurso en la condición. Integration Connectors admite condiciones para los siguientes recursos:
    Nombre del recurso Tipo de recurso
    Conexión connectors.googleapis.com/Connection
    ManagedZone connectors.googleapis.com/ManagedZone
    EndpointAttachment connectors.googleapis.com/EndpointAttachment
    EventSubscription connectors.googleapis.com/EventSubscription
    ConnectionSchemaMetadata connectors.googleapis.com/ConnectionSchemaMetadata

Ejemplos

En la siguiente tabla, se enumeran las condiciones de recursos de muestra que puedes aplicar a un usuario o un rol de Integration Connectors.

Condición de recurso de IAM Descripción
(resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-") && resource.type == "connectors.googleapis.com/Connection"))
|| resource.type != "connectors.googleapis.com/Connection"
Un usuario o un rol al que le apliques esta condición solo puede realizar las siguientes operaciones:
  • Enumera todas las conexiones.
  • Realizar operaciones get, create, update y delete en conexiones cuyo nombre comienza con 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") 
Un usuario o un rol al que le apliques esta condición solo puede realizar las siguientes operaciones:
  • Enumera todas las conexiones.
  • Realizar operaciones get, create, update y delete solo para conexiones cuyo nombre comience con marketing-
  • Obtiene metadatos del esquema de conexión solo para las conexiones cuyo nombre comienza con marketing-.

Agrega condiciones de IAM para las cuentas de servicio de Application Integration

Puedes aplicar condiciones de IAM a la cuenta de servicio de Application Integration, lo que te permite restringir las conexiones a las que puede acceder la cuenta de servicio durante la ejecución de la integración. Por ejemplo, puedes restringir una cuenta de servicio para que solo pueda acceder a las conexiones cuyo nombre comience con marketing-. Para obtener más información, consulta Cómo aplicar condiciones de IAM a una cuenta de servicio.

En la siguiente tabla, se enumeran las condiciones de recursos de muestra que puedes aplicar a una cuenta de servicio de Application Integration.

Condición de recurso de IAM Descripción
resource.name.startsWith
("projects/PROJECT_ID/locations/CONNECTION_LOCATION/
connections/marketing-")
La cuenta de servicio a la que aplicas esta condición solo puede ejecutar las conexiones cuyo nombre comience con marketing-.

¿Qué sigue?

Revisa la siguiente información en la documentación de IAM: