Airflow gestito (Gen 3) | Airflow gestito (Gen 2) | Airflow gestito (Gen 1 precedente)
I Controlli di servizio VPC consentono alle organizzazioni di definire un perimetro attorno alle risorseGoogle Cloud per mitigare i rischi di esfiltrazione di dati.
Gli ambienti Managed Airflow possono essere implementati all'interno di un perimetro di servizio. Configurando l'ambiente con i controlli di servizio VPC, puoi mantenere privati i dati sensibili approfittando delle funzionalità di orchestrazione del flusso di lavoro completamente gestite di Managed Airflow.
Il supporto dei Controlli di servizio VPC per Managed Airflow significa che:
- Ora Managed Airflow può essere selezionato come servizio protetto all'interno di un perimetro di Controlli di servizio VPC.
- Tutte le risorse sottostanti utilizzate da Managed Airflow sono configurate per supportare l'architettura dei Controlli di servizio VPC e rispettarne le regole.
Il deployment di ambienti Managed Airflow con i Controlli di servizio VPC ti offre:
- Riduzione del rischio di esfiltrazione di dati.
- Protezione dall'esposizione dei dati dovuta a controlli dell'accesso configurati in modo errato.
- Rischio ridotto che utenti malintenzionati copino dati in risorseGoogle Cloud non autorizzate o che aggressori esterni accedano a risorseGoogle Cloud da internet.
Informazioni sui Controlli di servizio VPC in Managed Airflow
- Tutti i vincoli di rete dei Controlli di servizio VPC si applicano anche agli ambienti Managed Airflow. Per i dettagli, consulta la documentazione sui Controlli di servizio VPC.
Se un ambiente Managed Airflow è protetto da un perimetro, l'accesso ai repository PyPI pubblici è limitato. Per saperne di più, consulta la sezione Installare pacchetti PyPI nei Controlli di servizio VPC.
Se il tuo ambiente utilizza il networking con IP privato, tutto il traffico interno viene indirizzato alla tua rete VPC, ad eccezione del traffico verso API di Google, servizi e domini che sono disponibili per gli ambienti con IP privato tramite l'accesso privato Google.
A seconda di come configuri la rete VPC, un ambiente con IP privato può accedere a internet tramite la rete VPC.
Managed Airflow non supporta l'utilizzo di identità di terze parti nelle regole in entrata e in uscita per consentire le operazioni dell'interfaccia utente di Apache Airflow. Tuttavia, puoi utilizzare il tipo di identità
ANY_IDENTITYnelle regole in entrata e in uscita per consentire l'accesso a tutte le identità, incluse quelle di terze parti. Per saperne di più sul tipo di identitàANY_IDENTITY, consulta Regole in entrata e in uscita.In modalità Controlli di servizio VPC, l'accesso al server web è protetto dal perimetro e l'accesso dall'esterno del perimetro è bloccato. Per consentire l'accesso dall'esterno del perimetro di servizio, configura i livelli di accesso o le regole in entrata e in uscita in base alle esigenze. Inoltre, puoi limitare l'accesso al server web a intervalli IP specifici.
Informazioni sulla connettività alle API di Google e ai servizi nei Controlli di servizio VPC
Managed Airflow (Gen 3) indirizza il traffico verso i servizi Google tramite restricted.googleapis.com, che consente l'accesso alle API di Google, ai servizi e ai domini supportati da questo intervallo.
Per ulteriori informazioni e l'elenco dei servizi e dei domini disponibili
tramite restricted.googleapis.com, consulta
Configurazione di rete nella documentazione di Virtual Private Cloud.
Gli ambienti Managed Airflow (Gen 3) bloccano le chiamate alle API, ai servizi e ai domini Google che non sono inclusi nell'elenco di API e servizi richiesti. Se vuoi chiamare un'API da un DAG:
- Assicurati che il servizio supporti i Controlli di servizio VPC.
- Aggiungi il servizio ai servizi limitati.
- Aggiungi il servizio ai servizi accessibili da VPC.
Ad esempio, se utilizzi un operatore VertexAI, aggiungi aiplatform.googleapis.com sia ai servizi limitati sia ai servizi accessibili da VPC.
Per saperne di più sull'aggiunta di servizi a un perimetro, consulta la sezione Gestisci i perimetri di servizio nella documentazione dei Controlli di servizio VPC.
In Managed Airflow (Gen 3), i servizi che non supportano i Controlli di servizio VPC e non sono disponibili tramite restricted.googleapis.com non sono accessibili da ambienti protetti con i Controlli di servizio VPC. Questa limitazione è stata
aggiunta in Managed Airflow (Gen 3) per migliorare la sicurezza dell'ambiente. Anche se
Managed Airflow (Gen 2) consente di configurare l'accesso a questi servizi non supportati, ti
consigliamo vivamente di evitare di farlo in qualsiasi ambiente protetto dai
Controlli di servizio VPC.
Crea ambienti in un perimetro
Per eseguire il deployment di Managed Airflow all'interno di un perimetro, sono necessari i seguenti passaggi:
Abilita l'API Gestore contesto accesso e l'API Cloud Composer per il tuo progetto. Per riferimento, consulta Attivazione delle API.
Crea un perimetro seguendo le istruzioni di configurazione del perimetro nella documentazione dei Controlli di servizio VPC. Assicurati che l'elenco dei servizi limitati includa tutti i servizi utilizzati da Managed Airflow, oltre ad altri servizi che vuoi limitare:
- 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)
Per tutti gli altri servizi utilizzati dai tuoi DAG:
- Aggiungi il servizio ai servizi limitati.
- Aggiungi il servizio ai servizi accessibili da VPC.
Crea un nuovo ambiente Managed Airflow:
- Utilizza Google Cloud CLI per creare l'ambiente.
- Abilita l'IP privato con l'argomento
--enable-private-environment. - Specifica i parametri di accesso per il server web con gli argomenti
--web-server-allow-all,--web-server-allow-ipo--web-server-deny-all. Per saperne di più sull'utilizzo di questi argomenti, consulta Creare ambienti. Per migliorare la protezione, consenti l'accesso al server web solo da intervalli IP specifici. Non consentire l'installazione di pacchetti da repository nella rete internet pubblica con l'argomento
--enable-private-builds-only.Esempio:
gcloud composer environments create example-environment \ --location us-central1 \ --enable-private-environment \ --web-server-allow-all \ --enable-private-builds-only
Per impostazione predefinita, l'accesso all'API e all'interfaccia utente di Airflow è consentito solo dall'interno del perimetro di sicurezza. Se vuoi renderlo disponibile al di fuori del perimetro di sicurezza, configura i livelli di accesso o le regole in entrata e in uscita.
Aggiungi un ambiente esistente al perimetro
Puoi aggiungere il progetto contenente il tuo ambiente a un perimetro se i tuoi ambienti utilizzano l'IP privato e l'installazione di pacchetti PyPI da repository pubblici è disattivata.
Per aggiornare un ambiente Managed Airflow (Gen 3) esistente a questa configurazione:
- Assicurati di aver già creato o configurato il perimetro come descritto nella sezione precedente.
- Utilizza Google Cloud CLI per aggiornare l'ambiente.
- Abilita l'IP privato con l'argomento
--enable-private-environment. - Non consentire l'installazione di pacchetti da repository nella rete internet pubblica
con l'argomento
--enable-private-builds-only. - Se necessario, configura l'accesso al server web Airflow. Per migliorare la protezione, consenti l'accesso al server web solo da intervalli IP specifici.
Esempio:
gcloud composer environments update example-environment \
--location us-central1 \
--enable-private-environment \
--enable-private-builds-only
Installare pacchetti PyPI nei Controlli di servizio VPC
Nella configurazione predefinita dei Controlli di servizio VPC, Managed Airflow supporta solo l'installazione di pacchetti PyPI da repository privati raggiungibili dallo spazio di indirizzi IP interni della rete VPC.
Per impostazione predefinita, tutti gli ambienti Managed Airflow all'interno di un perimetro dei Controlli di servizio VPC non hanno accesso ai repository PyPI pubblici.
Installare da un repository privato
La configurazione consigliata prevede la configurazione di un repository PyPI privato:
Compilalo con i pacchetti verificati utilizzati dalla tua organizzazione, quindi configura Managed Airflow per installare le dipendenze Python da un repository privato.
Installare da un repository pubblico
Per installare i pacchetti PyPI da un repository esterno:
- Crea un repository remoto Artifact Registry.
- Concedi a questo repository l'accesso alle origini upstream.
- Configura Airflow per installare pacchetti da un repository Artifact Registry.
Log dei Controlli di servizio VPC
Quando risolvi i problemi di creazione dell'ambiente, puoi analizzare gli audit log generati dai Controlli di servizio VPC.
Oltre ad altri messaggi di log, puoi controllare i log per informazioni su
cloud-airflow-prod@system.gserviceaccount.com e
service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com
account di servizio che configurano i componenti dei tuoi ambienti.
Il servizio Managed Airflow utilizza il account di servizio cloud-airflow-prod@system.gserviceaccount.com per gestire i componenti del progetto tenant dei tuoi ambienti.
Il account di servizio
service-PROJECT_ID@cloudcomposer-accounts.iam.gserviceaccount.com, noto anche come service account dell'agente di servizio Composer, gestisce i componenti dell'ambiente nei
progetti di servizio e host.