Accéder aux environnements avec la fédération des identités des employés

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

Cette page explique comment configurer l'accès des utilisateurs à vos Environnement Cloud Composer avec fédération des identités des employés

À propos de la fédération d'identité de personnel dans Cloud Composer

La fédération des identités des employés vous permet d'utiliser un fournisseur d'identité externe (IdP) pour authentifier et autoriser des employés, c'est-à-dire un groupe d'utilisateurs, comme collaborateurs, partenaires et sous-traitants) grâce à IAM, les utilisateurs peuvent accéder aux services Google Cloud. Pour en savoir plus sur la fédération des identités des employés, consultez la page Fédération des identités des employés.

Si la fédération des identités des employés est configurée dans votre projet, vous pouvez accéder votre environnement de différentes manières:

  • Page Cloud Composer dans la console Google Cloud
  • Interface utilisateur d'Airflow
  • Google Cloud CLI, y compris l'exécution de commandes de CLI Airflow
  • API Cloud Composer
  • API REST Airflow

Avant de commencer

  • Tous les nouveaux environnements Cloud Composer créés à partir de la version 2.1.11 et d'Airflow 2.4.3 sont compatibles avec la fédération des identités des employés. Vous n'avez pas besoin de configurer de manière spécifique pour faciliter la fédération des identités des employés.

  • Les environnements créés avant la version 2.1.11 et la version 2.4.3 d'Airflow, puis mis à niveau vers des versions ultérieures, ne sont pas compatibles avec la fédération des identités des employés. Vous pouvez Vérifiez si votre environnement est compatible avec la fédération des identités des employés.

  • Les limites de Cloud Storage pour la fédération d'identité de personnel s'appliquent au bucket de l'environnement. En particulier, vous devez activer l'accès uniforme au niveau du bucket sur le bucket de l'environnement pour permettre aux identités externes d'importer leurs DAG et fichiers dans ce bucket.

  • Les e-mails envoyés depuis Airflow n'incluent que le champ URL de l'interface utilisateur Airflow pour les comptes Google Étant donné que les identités externes ne peuvent accéder à l'UI Airflow que via l'URL de l'UI Airflow pour les identités externes, le lien doit être ajusté (remplacé par l'URL pour les identités externes).

Configurer l'accès à votre environnement avec la fédération d'identité des employés

Cette section explique comment configurer l'accès des identités externes à votre environnement Cloud Composer.

Configurer votre fournisseur d'identité

Configurez la fédération d'identité de personnel pour votre fournisseur d'identité en suivant le guide Configurer la fédération d'identité de personnel.

Attribuer des rôles IAM à des identités externes

Dans Identity and Access Management, attribuez des rôles IAM à des ensembles afin qu'elles puissent accéder à votre environnement et interagir avec celui-ci:

Vérifier que les nouveaux utilisateurs reçoivent les rôles Airflow appropriés dans le contrôle des accès à l'interface utilisateur Airflow

Cloud Composer gère les utilisateurs Airflow pour les identités externes de la même manière que pour les utilisateurs de comptes Google. Au lieu d'une adresse e-mail, identifiant principal est utilisé. Lorsqu'une identité externe accède à l'interface utilisateur d'Airflow pour la première fois, un utilisateur Airflow est automatiquement enregistré dans le système de contrôle des accès basé sur les rôles d'Airflow avec le rôle par défaut.

Vérifiez que les nouveaux utilisateurs reçoivent les rôles Airflow appropriés dans le Contrôle des accès de l'interface utilisateur Airflow. Deux possibilités s'offrent à vous :

  • Permettre aux identités externes de recevoir le rôle par défaut après avoir accédé à Airflow pour la première fois. Si nécessaire, les utilisateurs administrateurs Airflow peuvent remplacer ce rôle par un autre.
  • Préenregistrer des identités externes avec un ensemble en ajoutant les enregistrements utilisateur Airflow contenant le nom d'utilisateur d'adresse e-mail avec les identifiants de leur compte principal. De cette manière, les identités externes obtiennent le rôle que vous leur avez attribué, et non le rôle par défaut.

Vérifier si un environnement est compatible avec la fédération des identités des employés

Pour vérifier si votre environnement est compatible avec la fédération des identités des employés, exécutez la commande Google Cloud CLI suivante. Si la sortie affiche un URI, votre environnement est compatible avec la fédération des identités des employés.

gcloud composer environments describe ENVIRONMENT_NAME \
  --location LOCATION \
  --format="value(config.airflowByoidUri)"

Remplacez :

  • ENVIRONMENT_NAME par le nom de l'environnement.
  • LOCATION par la région où se trouve l'environnement.

Exemple :

gcloud composer environments describe example-environment \
  --location us-central1 \
  --format="value(config.airflowByoidUri)"

Accéder à la page Cloud Composer dans la console Google Cloud

La console de fédération d'identité de personnel Google Cloud permet d'accéder à la page Cloud Composer.

Sur la page Composer de la console de fédération des identités des employés Google Cloud, vous pouvez accéder à l'UI pour gérer les environnements, les journaux Cloud Composer, la surveillance et l'UI DAG.

Tous les liens vers l'interface utilisateur Airflow dans la console fédérée pointent vers cette interface pour les identités externes.

Les liens de l'interface utilisateur Airflow des environnements utilisant des versions antérieures à la version 2.1.11 et/ou des versions d'Airflow antérieures à la version 2.4.3 peuvent être marqués comme "Non disponibles". Cela signifie que cet environnement n'est pas compatible avec les utilisateurs de la fédération d'identité de personnel dans l'UI Airflow. L'interface utilisateur Airflow de cet environnement n'est accessible qu'avec des comptes Google.

Accéder à l'interface utilisateur d'Airflow

Les environnements Cloud Composer disposent de deux URL pour l'interface utilisateur d'Airflow : une pour les comptes Google et une autre pour les identités externes. Identités externes doit accéder à l'interface utilisateur d'Airflow via l'URL des identités externes.

  • L'URL des identités externes est https://<UNIQUE_ID>.composer.byoid.googleusercontent.com

  • L'URL des comptes Google est https://<UNIQUE_ID>.composer.googleusercontent.com.

Seuls les utilisateurs authentifiés avec des identités externes peuvent accéder à l'URL pour les identités externes. Si un utilisateur consulte l'URL pour des identités externes lorsqu'il n'est pas connecté, il est d'abord redirigé vers le portail d'authentification dans lequel le nom du fournisseur de pool d'employés est spécifié, redirigés vers leur fournisseur d'identité pour se connecter, redirigé vers l'interface utilisateur Airflow de l'environnement.

Accéder à l'UI du DAG dans la console Google Cloud

L'UI DAG est disponible pour les utilisateurs d'identités externes dans la console fédérée. Vous pouvez contrôler l'accès à l'aide de stratégies IAM.

Accès basé sur les rôles Airflow dans les environnements dotés d'une identité de personnel complète la compatibilité de la fédération est également prise en compte et peut être utilisée pour limiter Les DAG sont visibles par les utilisateurs individuels en configurant des rôles, comme décrit dans Utiliser le contrôle des accès à l'interface utilisateur d'Airflow

Accéder à la Google Cloud CLI

Pour accéder à votre environnement via la Google Cloud CLI, les identités externes doivent effectuer les opérations suivantes:

  1. Connectez-vous avec la Google Cloud CLI à l'aide d'une identité externe.
  2. Exécutez les commandes gcloud composer environments.

Accéder à l'API Cloud Composer

L'API Cloud Composer peut être utilisée avec des identités externes pour gérer tous les environnements Composer avec les méthodes d'authentification compatibles, telles que les jetons OAuth.

API REST Airflow

L'API REST Airflow est disponible à l'adresse point de terminaison pour les identités externes disposant méthodes d'authentification comme les jetons OAuth.

Pour obtenir l'URL du point de terminaison des identités externes de votre environnement, utilisez la commande gcloud composer environments describe, comme indiqué dans Vérifier si un environnement est compatible avec la fédération des identités des employés .

Étape suivante