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:
- 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 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 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. 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:
|
(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:
|
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:
- 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