Best practice per la sicurezza

Cloud Composer 1 | Cloud Composer 2 | Cloud Composer 3

La protezione dell'ambiente Cloud Composer è fondamentale per proteggere i dati sensibili e impedire l'accesso non autorizzato. Questa pagina illustra le best practice principali, inclusi i consigli per la sicurezza di rete, Identity and Access Management, la crittografia e la gestione della configurazione dell'ambiente.

Per ulteriori informazioni sulle funzionalità di sicurezza disponibili in Cloud Composer, consulta la Panoramica della sicurezza.

Gestire la configurazione dell'ambiente e i DAG utilizzando il controllo della versione

Un esempio di pipeline CI/CD Airflow
Figura 1. Un esempio di pipeline CI/CD Airflow (fai clic per ingrandire)
  • Crea il tuo ambiente utilizzando Terraform. In questo modo, puoi archiviare la configurazione dell'ambiente come codice in un repository. In questo modo, le modifiche alla configurazione dell'ambiente possono essere esaminate prima di essere applicate e puoi ridurre il numero di utenti che dispongono delle autorizzazioni per modificare la configurazione assegnando ruoli con meno autorizzazioni.

  • Esegui il deployment dei DAG nel tuo ambiente con una pipeline CI/CD, in modo che il codice DAG venga recuperato da un repository. In questo modo, i DAG vengono esaminati e approvati prima che le modifiche vengano unite al sistema di controllo della versione. Durante la procedura di revisione, gli approvatori si assicurano che i DAG soddisfino i criteri di sicurezza stabiliti all'interno dei loro team. Il passaggio di revisione è fondamentale per impedire il deployment di DAG che modificano i contenuti del bucket dell'ambiente.

  • In Identity and Access Management, disattiva l'accesso diretto ai DAG e alla configurazione dell'ambiente per gli utenti normali, come descritto nella sezione Identity and Access Management.

Sicurezza della rete

Identity and Access Management

  • Isolare le autorizzazioni. Crea account di servizio per l'ambiente e utilizza account di servizio diversi per ambienti diversi. Assegna a questi account di servizio solo le autorizzazioni strettamente necessarie per gestire questi ambienti ed eseguire le operazioni definite nei DAG di Airflow che eseguono.

  • Evita di utilizzare account di servizio con autorizzazioni ampie. Anche se è possibile creare un ambiente che utilizza un account con autorizzazioni ampie, come quelle concesse dal ruolo di base Editor, questo comporta il rischio che i DAG utilizzino autorizzazioni più ampie del previsto.

  • Non fare affidamento sugli account di servizio predefiniti dei servizi Google utilizzati da Cloud Composer. Spesso è impossibile ridurre le autorizzazioni disponibili per questi account di servizio senza influire anche su altri servizi Google nel progetto.

  • Assicurati di conoscere i considerazioni sulla sicurezza per gli account di servizio dell'ambiente e di comprendere in che modo questo account interagisce con le autorizzazioni e i ruoli che concedi ai singoli utenti del progetto.

  • Rispetta il principio del privilegio minimo. Concedi agli utenti solo le autorizzazioni minime necessarie. Ad esempio, assegna i ruoli IAM, in modo che solo gli amministratori possano accedere al bucket dell'ambiente e l'accesso diretto sia disattivato per gli utenti normali. Ad esempio, il ruolo Utente Composer consente l'accesso solo all'interfaccia utente di DAG e Airflow.

  • Applica il controllo dell'accesso all'interfaccia utente di Airflow, che consente di ridurre la visibilità nell'interfaccia utente di Airflow e nell'interfaccia utente del DAG in base al ruolo di Airflow dell'utente e può essere utilizzato per assegnare autorizzazioni a livello di DAG per i singoli DAG.

  • Esamina regolarmente. Controlla regolarmente le autorizzazioni e i ruoli IAM per identificare e rimuovere eventuali privilegi eccessivi o inutilizzati.

  • Fai attenzione a trasmettere e archiviare dati sensibili:

    • Presta attenzione quando passi dati sensibili come informazioni che consentono l'identificazione personale o password. Se necessario, utilizza Secret Manager per archiviare in modo sicuro le connessioni e i secret di Airflow, le chiavi API, le password e i certificati. Non memorizzare queste informazioni nei DAG o nelle variabili di ambiente.

    • Concedi le autorizzazioni IAM al bucket dell'ambiente solo a utenti attendibili. Se possibile, utilizza le autorizzazioni per oggetto. La sezione Considerazioni sulla sicurezza per gli account di servizio dell'ambiente elenca diversi modi in cui gli utenti con accesso al bucket dell'ambiente possono eseguire azioni per conto dell'account di servizio dell'ambiente.

    • Assicurati di conoscere quali dati vengono archiviati negli snapshot e di fornire le autorizzazioni per creare snapshot dell'ambiente e accedere al bucket in cui vengono archiviati solo agli utenti attendibili.

    • Per impostazione predefinita, tutte le interfacce esterne di Cloud Composer utilizzano la crittografia. Quando ti connetti a prodotti e servizi esterni, assicurati di utilizzare la comunicazione criptata (SSL/TLS).

Passaggi successivi