Cloud Composer 3 | Cloud Composer 2 | Cloud Composer 1
VPC Service Controls permet aux organisations de définir un périmètre autour des ressourcesGoogle Cloud afin de limiter les risques d'exfiltration de données.
Les environnements Cloud Composer peuvent être déployés dans un périmètre de service. En configurant votre environnement avec VPC Service Controls, vous pouvez garder vos données sensibles privées tout en profitant des fonctionnalités d'orchestration des workflows entièrement gérées de Cloud Composer.
La compatibilité de VPC Service Controls pour Cloud Composer implique les éléments suivants :
- Cloud Composer peut désormais être sélectionné en tant que service sécurisé dans un périmètre VPC Service Controls.
- Toutes les ressources sous-jacentes utilisées par Cloud Composer sont configurées pour assurer l'architecture de VPC Service Controls et respecter ses règles.
Le déploiement d'environnements Cloud Composer avec VPC Service Controls offre les avantages suivants :
- Réduction du risque d'exfiltration des données
- Protection contre l'exposition des données en raison d'une mauvaise configuration des contrôles des accès
- Réduction du risque de copie des données par des utilisateurs malveillants vers des ressourcesGoogle Cloud non autorisées ou des pirates informatiques externes accédant aux ressourcesGoogle Cloud depuis Internet
À propos de VPC Service Controls dans Cloud Composer
- Toutes les contraintes réseau de VPC Service Controls s'appliqueront également à vos environnements Cloud Composer. Pour en savoir plus, consultez la documentation de VPC Service Controls.
Si un environnement Cloud Composer est protégé par un périmètre, l'accès aux dépôts PyPI publics est restreint. Pour en savoir plus, consultez la section Installer des packages PyPI dans VPC Service Controls.
Si votre environnement utilise la mise en réseau par adresse IP privée, tout le trafic interne est acheminé vers votre réseau VPC, à l'exception du trafic vers les API, services et domaines Google qui sont disponibles pour les environnements d'adresse IP privée via l'accès privé à Google.
Selon la configuration de votre réseau VPC, un environnement d'adresse IP privée peut accéder à Internet via votre réseau VPC.
En mode VPC Service Controls, l'accès au serveur Web est protégé par le périmètre et l'accès en dehors du périmètre est bloqué. Pour autoriser l'accès en dehors du périmètre de service, configurez des niveaux d'accès ou des règles d'entrée et de sortie, selon les besoins. En outre, vous pouvez limiter l'accès au serveur Web à des plages d'adresses IP spécifiques.
À propos de la connectivité aux API et services Google dans VPC Service Controls
Cloud Composer 3 achemine le trafic vers les services Google via restricted.googleapis.com
, ce qui permet d'accéder aux API, services et domaines Google compatibles avec cette plage.
Pour en savoir plus et obtenir la liste des services et des domaines disponibles via restricted.googleapis.com
, consultez la section Configuration réseau dans la documentation sur le cloud privé virtuel.
Cloud Composer 3 bloque les appels aux API, services et domaines Google qui ne figurent pas dans la liste des API et services requis. Si vous souhaitez appeler une API à partir d'un DAG, assurez-vous de:
- Ajouter le service aux services restreints
- Ajouter le service aux services accessibles par VPC
Par exemple, si vous utilisez un opérateur VertexAI, ajoutez aiplatform.googleapis.com
aux services restreints et aux services accessibles par VPC.
Pour en savoir plus, consultez la section Gérer les périmètres de service dans la documentation de VPC Service Controls.
Créer un périmètre de service
Pour savoir comment créer et configurer des périmètres de service, consultez la page Créer un périmètre de service. Veillez à sélectionner Cloud Composer comme l'un des services sécurisés au sein du périmètre.
Créer des environnements dans un périmètre
Les étapes suivantes sont requises pour déployer Cloud Composer dans un périmètre:
Activez l'API Access Context Manager et l'API Cloud Composer pour votre projet. Consultez la section Activer des API.
Assurez-vous que votre périmètre de service contient les services Google accessibles par VPC suivants, sinon la création de votre environnement risque d'échouer:
- API Cloud Composer (composer.googleapis.com)
- API Artifact Registry (artifactregistry.googleapis.com)
- API Compute Engine (compute.googleapis.com)
- API Kubernetes Engine (container.googleapis.com)
- API Container File System (containerfilesystem.googleapis.com)
- API Cloud DNS (dns.googleapis.com)
- API Service Account Credentials (iamcredentials.googleapis.com)
- API Cloud Logging (logging.googleapis.com)
- API Cloud Monitoring (monitoring.googleapis.com)
- API Cloud Pub/Sub (pubsub.googleapis.com)
- API Cloud SQL Admin (sqladmin.googleapis.com)
- API Cloud Storage (storage.googleapis.com)
Créez un environnement Cloud Composer:
- Utilisez Google Cloud CLI pour créer votre environnement.
- Activez l'adresse IP privée avec l'argument
--enable-private-environment
. - Spécifiez les paramètres d'accès du serveur Web avec les arguments
--web-server-allow-all
,--web-server-allow-ip
ou--web-server-deny-all
. Pour en savoir plus sur l'utilisation de ces arguments, consultez la section Créer des environnements. Pour améliorer la protection, autorisez uniquement l'accès au serveur Web à partir de plages d'adresses IP spécifiques. Interdisez l'installation de packages à partir de dépôts Internet publics avec l'argument
--enable-private-builds-only
.Exemple :
gcloud composer environments create example-environment \ --location us-central1 \ --enable-private-environment \ --web-server-allow-all \ --enable-private-builds-only
Par défaut, l'accès à l'interface utilisateur et à l'API Airflow n'est autorisé que depuis le périmètre de sécurité. Si vous souhaitez le rendre disponible en dehors du périmètre de sécurité, configurez des niveaux d'accès ou des règles d'entrée et de sortie.
Ajouter un environnement existant au périmètre
Vous pouvez ajouter le projet contenant votre environnement à un périmètre si vos environnements utilisent une adresse IP privée et que l'installation de packages PyPI à partir de dépôts publics est désactivée.
Pour mettre à jour un environnement Cloud Composer 3 existant vers cette configuration:
- Assurez-vous d'avoir déjà créé ou configuré le périmètre comme décrit dans la section précédente.
- Utilisez Google Cloud CLI pour mettre à jour votre environnement.
- Activez l'adresse IP privée avec l'argument
--enable-private-environment
. - Interdiction de l'installation de packages à partir de dépôts Internet publics avec l'argument
--enable-private-builds-only
. - Si nécessaire, configurez l'accès au serveur Web Airflow. Pour améliorer la protection, autorisez uniquement l'accès au serveur Web à partir de plages d'adresses IP spécifiques.
Exemple :
gcloud composer environments update example-environment \
--location us-central1 \
--enable-private-environment \
--enable-private-builds-only
Installer des paquets PyPI dans VPC Service Controls
Dans la configuration par défaut de VPC Service Controls, Cloud Composer n'accepte que l'installation de packages PyPI à partir de dépôts privés accessibles depuis l'espace d'adresses IP internes du réseau VPC.
Par défaut, tous les environnements Cloud Composer d'un périmètre VPC Service Controls n'ont pas accès aux dépôts PyPI publics.
Installer à partir d'un dépôt privé
La configuration recommandée consiste à configurer un dépôt PyPI privé:
Remplissez-le avec les packages approuvés utilisés par votre organisation, puis configurez Cloud Composer pour installer des dépendances Python à partir d'un dépôt privé.
Installer à partir d'un dépôt public
Pour installer des packages PyPI à partir d'un dépôt externe:
- Créez un dépôt distant Artifact Registry.
- Accordez à ce dépôt l'accès aux sources en amont.
- Configurez Airflow pour installer des packages à partir d'un dépôt Artifact Registry.
Journaux VPC Service Controls
Pour résoudre les problèmes de création d'environnement, vous pouvez analyser les journaux d'audit générés par VPC Service Controls.
En plus des autres messages de journal, vous pouvez consulter les journaux pour obtenir des informations sur les comptes de service cloud-airflow-prod@system.gserviceaccount.com
et service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com
qui configurent les composants de vos environnements.
Le service Cloud Composer utilise le compte de service cloud-airflow-prod@system.gserviceaccount.com
pour gérer les composants de projet de locataire de vos environnements.
Le compte de service service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com
, également appelé compte de service de l'agent de service Composer, gère les composants d'environnement dans les projets de service et hôte.