Condiciones de IAM para el acceso detallado
En esta página, se describe cómo restringir el acceso a tus conexiones con 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 compatibles en una conexión. Con las Condiciones de IAM, puedes
restringir a un usuario o un rol específico para que realice solo operaciones seleccionadas en una conexión. Por ejemplo, puedes restringir a un usuario de modo que solo pueda modificar las conexiones cuyo nombre comienza 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:
- Recurso
- Jerarquía de recursos
- Funciones
- Funciones personalizadas
- Permisos
- Permisos solo para superiores
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 los conectores de integración 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 una 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 la convención de nombres que deseas usar. Por ejemplo, puedes anteponer la palabramarketing-
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á conprojects/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. Los conectores de integración admiten 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 para un usuario o un rol de Integration Connectors.
Condición de recursos 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 apliques esta condición solo puede realizar las siguientes operaciones:
|
(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 apliques esta condición solo puede realizar las siguientes operaciones:
|
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 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 para una cuenta de servicio de integración de aplicaciones.
Condición de recursos de IAM | Descripción |
---|---|
resource.name.startsWith ("projects/PROJECT_ID/locations/CONNECTION_LOCATION/ connections/marketing-") |
La cuenta de servicio a la que apliques esta condición solo podrá ejecutar aquellas conexiones cuyo nombre comience con marketing- . |
¿Qué sigue?
Revisa la siguiente información en la documentación de IAM:
- Agrega una vinculación de funciones condicional a una política
- Modifica una vinculación de función condicional existente
- Quita una vinculación de función condicional