Condiciones de IAM para un 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 un 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 un usuario o un rol específicos para que solo realicen las operaciones seleccionadas en una conexión. Por ejemplo, puedes restringir un usuario de modo que este solo pueda modificar las conexiones cuyo nombre comience con test-connection y no tenga otros permisos sobre 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 funciones y permisos para los recursos de Integration Connectors. Por lo tanto, antes de especificar o modificar las condiciones en IAM para tus recursos de Integration Connectors, debes familiarizarte 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 para el recurso de conexión es projects/PROJECT_ID/locations/CONNECTION_LOCATION/connections/{connection_name}. Para obtener una lista completa de todos los URI disponibles, consulta 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 según una convención de nombres. Según tus requisitos, puedes decidir la convención de nombres que deseas usar. Por ejemplo, puedes agregar el prefijo marketing- a todas las conexiones que pertenecen al equipo de marketing. En este ejemplo, el URI de 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.
  • Resource type: Puedes reducir aún más el alcance de los recursos si filtras por un tipo de recurso en la condición. Integration Connectors admite condiciones para los siguientes recursos:
    Nombre del recurso Tipo de recurso
    Connection 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 ejemplo de los recursos que puedes aplicar a un usuario o un rol de Integration Connectors.

Condición del 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.
  • Realiza operaciones de obtención, creación, actualización y eliminación en conexiones cuyo nombre comience 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.
  • Realiza operaciones de obtención, creación, actualización y eliminación solo para conexiones cuyo nombre comience con marketing-.
  • Obtén metadatos del esquema de conexión solo para conexiones cuyo nombre comience 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 la cuenta de servicio puede acceder durante la ejecución de la integración. Por ejemplo, puedes restringir una cuenta de servicio de modo que solo pueda acceder a las conexiones cuyo nombre comience con marketing-. Para obtener más información, consulta Aplica condiciones de IAM a una cuenta de servicio.

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

Condición del 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 aquellas conexiones cuyo nombre comience con marketing-.

¿Qué sigue?

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