Managed Airflow (3ª gen.) | Managed Airflow (2ª gen.) | Managed Airflow (1ª gen. heredada)
En esta página, se describe cómo acceder a los recursos que se encuentran en un Google Cloud proyecto diferente al de tu entorno de Managed Airflow.
Si quieres usar una cuenta de servicio de un proyecto para ejecutar entornos en otro proyecto, consulta Usa una cuenta de servicio de otro proyecto.
Si quieres usar operadores de Airflow para interactuar con entornos de Managed Airflow, incluidos los entornos de otros proyectos, consulta Activa DAGs en otros entornos y proyectos.
Te recomendamos que accedas a los recursos en otros Google Cloud proyectos de la siguiente manera:
En tus DAGs, usa las conexiones predeterminadas que están preconfiguradas en tu entorno.
Por ejemplo, muchos Google Cloud operadores usan la conexión
google_cloud_default, que se configura automáticamente cuando creas un entorno.Otorga roles y permisos de IAM adicionales a la cuenta de servicio de tu entorno para que pueda acceder a los recursos de un proyecto diferente.
Determina la cuenta de servicio de tu entorno
Para determinar la cuenta de servicio de tu entorno, haz lo siguiente:
Console
En la Google Cloud consola, ve a la página Entornos.
En la lista de entornos, haz clic en el nombre de tu entorno. Se abrirá la página Detalles del entorno.
Ve a la pestaña Configuración del entorno.
La cuenta de servicio de tu entorno aparece en el campo Cuenta de servicio.
El valor es una dirección de correo electrónico, como
service-account-name@example-project.iam.gserviceaccount.com.
gcloud
gcloud composer environments describe ENVIRONMENT_NAME \
--location LOCATION \
--format="get(config.nodeConfig.serviceAccount)"
El valor es una dirección de correo electrónico, como service-account-name@example-project.iam.gserviceaccount.com.
Otorga roles y permisos de IAM para acceder a los recursos de otro proyecto
La cuenta de servicio de tu entorno requiere permisos para acceder a los recursos de otro proyecto. Estos roles y permisos pueden ser diferentes según el recurso al que quieras acceder.
Accede a un recurso específico
Te recomendamos que otorgues roles y permisos para recursos específicos, como un solo bucket de Cloud Storage ubicado en un proyecto diferente. En este enfoque, usas el acceso basado en recursos con vinculaciones de roles condicionales.
Para acceder a un recurso específico, haz lo siguiente:
- Sigue la guía Configura el acceso basado en recursos.
- Cuando otorgues roles y permisos, especifica la cuenta de servicio de tu entorno como un principal.
Accede a un tipo de recurso
Como alternativa, puedes otorgar roles y permisos según el tipo de recurso, como todos los buckets de Cloud Storage ubicados en un proyecto diferente.
Para acceder a un tipo de recurso, haz lo siguiente:
- Sigue la guía Administra el acceso a otros recursos.
- Cuando otorgues roles y permisos, especifica la cuenta de servicio de tu entorno como un principal.
Después de otorgar los roles y permisos necesarios, puedes acceder a los recursos de un proyecto diferente con las mismas conexiones predeterminadas de Airflow que usas para acceder a los recursos del proyecto en el que se encuentra tu entorno.
¿Qué sigue?
- Control de acceso con IAM
- Administrar conexiones de Airflow
- Configurar restricciones de ubicación de recursos