Cloud Composer 1 | Cloud Composer 2
Cette page explique comment configurer l'accès des utilisateurs à votre environnement Cloud Composer avec la fédération d'identité de personnel.
À propos de la fédération d'identité de personnel dans Cloud Composer
La fédération d'identité de personnel vous permet d'utiliser un fournisseur d'identité externe (IdP) pour authentifier et autoriser une équipe (un groupe d'utilisateurs), comme les employés, les partenaires et les sous-traitants, à l'aide d'IAM, afin que les utilisateurs puissent accéder aux services Google Cloud. Pour en savoir plus sur la fédération d'identité de personnel, consultez la page Fédération d'identité de personnel.
Si la fédération d'identité de personnel 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 CLI Airflow
- API Cloud Composer
- API REST Airflow
Avant de commencer
Tous les 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 d'identité de personnel. Vous n'avez pas besoin de configurer votre environnement d'une manière spécifique pour permettre la fédération d'identité de personnel.
Les environnements créés avant les versions 2.1.11 et Airflow 2.4.3 et mis à niveau vers les versions ultérieures ne sont pas compatibles avec la fédération d'identité de personnel. Vous pouvez vérifier si votre environnement est compatible avec la fédération d'identité de personnel.
Les limites 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 leurs fichiers dans ce bucket.
Les e-mails envoyés depuis Airflow n'incluent que l'URL d'UI Airflow pour les comptes Google. Étant donné que les identités externes ne peuvent accéder à l'interface utilisateur Airflow que via l'URL de celle-ci 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é de personnel
Cette section décrit la procédure de configuration de 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 d'identités externes afin qu'ils puissent accéder à votre environnement et interagir avec celui-ci:
Pour obtenir la liste des rôles propres à Cloud Composer, consultez la section Attribuer des rôles aux utilisateurs. Par exemple, le rôle Utilisateur de l'environnement et lecteur des objets Storage (
composer.environmentAndStorageObjectViewer
) permet à un utilisateur d'afficher les environnements, d'accéder à l'interface utilisateur Airflow, de consulter et de déclencher des DAG à partir de l'interface utilisateur DAG, et d'afficher les objets des buckets d'environnement.Pour savoir comment attribuer ces rôles à des utilisateurs externes, consultez Attribuer des rôles IAM aux comptes principaux.
Pour savoir comment représenter les identités externes dans les stratégies IAM, consultez Représenter les utilisateurs du pool de collaborateurs dans les stratégies IAM.
Vérifier que les nouveaux utilisateurs reçoivent les rôles Airflow corrects dans le contrôle des accès de 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, un identifiant principal est utilisé. Lorsqu'une identité externe accède pour la première fois à l'interface utilisateur Airflow, un utilisateur Airflow est automatiquement enregistré dans le système de contrôle des accès basé sur les rôles Airflow, avec le rôle par défaut.
Vérifiez que les nouveaux utilisateurs reçoivent les rôles Airflow corrects dans le contrôle d'accès de l'interface utilisateur Airflow. Deux possibilités s'offrent à vous :
- Permettez aux identités externes de recevoir le rôle par défaut après avoir accédé à l'UI Airflow pour la première fois. Si nécessaire, les administrateurs Airflow peuvent modifier ce rôle.
Préenregistrer des identités externes avec un ensemble de rôles requis en ajoutant des enregistrements utilisateur Airflow dont le nom d'utilisateur et les champs d'adresse e-mail sont définis sur leurs identifiants principaux De cette façon, 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 d'identité de personnel
Pour vérifier si votre environnement est compatible avec la fédération d'identité de personnel, exécutez la commande Google Cloud CLI suivante. Si le résultat affiche un URI, cela signifie que votre environnement est compatible avec la fédération d'identité de personnel.
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 donne accès à la page Cloud Composer.
Depuis la page Composer de la console de fédération d'identité de personnel Google Cloud, vous pouvez accéder à l'UI pour gérer les environnements, les journaux Cloud Composer, la surveillance et l'interface utilisateur du DAG.
Tous les liens vers l'interface utilisateur Airflow dans la console fédérée pointent vers le point d'accès de l'interface utilisateur Airflow pour les identités externes.
Les liens vers les interfaces utilisateur des versions antérieures à la version 2.1.11 et/ou Airflow antérieures à la version 2.4.3 peuvent être marqués comme "Non disponible". Cela indique que cet environnement n'est pas compatible avec les utilisateurs de la fédération d'identité de personnel dans l'interface utilisateur Airflow. L'interface utilisateur Airflow de cet environnement n'est accessible qu'avec les comptes Google.
Accéder à l'interface utilisateur Airflow
Les environnements Cloud Composer ont deux URL pour l'interface utilisateur Airflow: une pour les comptes Google et une pour les identités externes. Les identités externes doivent 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 des identités externes. Si un utilisateur visite l'URL d'identités externes alors qu'il n'est pas connecté, il est d'abord redirigé vers le portail d'authentification où il spécifie le nom de son fournisseur de pool de collaborateurs, puis vers son fournisseur d'identité pour se connecter, puis vers l'interface utilisateur Airflow de l'environnement.
Accéder à l'interface utilisateur du DAG dans la console Google Cloud
L'interface utilisateur de DAG est disponible pour les utilisateurs d'identité externe dans la console fédérée. Vous pouvez contrôler l'accès à l'aide des stratégies IAM.
L'accès basé sur les rôles Airflow dans les environnements compatibles avec la fédération d'identité de personnel complète est également pris en compte et peut être utilisé pour limiter les DAG visibles pour les utilisateurs individuels, en configurant des rôles, comme décrit dans la section Utiliser le contrôle des accès à l'interface utilisateur Airflow.
Accéder à Google Cloud CLI
Pour accéder à votre environnement via Google Cloud CLI, les identités externes doivent:
- Connectez-vous à Google Cloud CLI à l'aide d'une identité externe.
- 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 au point de terminaison pour les identités externes avec les méthodes d'authentification compatibles telles que les jetons OAuth.
Pour obtenir l'URL du point de terminaison pour les identités externes de votre environnement, utilisez la commande gcloud composer environments describe
, comme indiqué dans la section Vérifier si un environnement est compatible avec la fédération d'identité de personnel.
Étapes suivantes
- Contrôle des accès avec IAM
- Utiliser le contrôle des accès de l'interface utilisateur Airflow
- Accéder à la CLI Airflow
- Accéder à l'API REST Airflow