Proteggere l'ambiente Managed Service for Apache Spark è fondamentale per proteggere i dati sensibili e impedire l'accesso non autorizzato. Questo documento delinea le principali best practice per migliorare la postura di sicurezza di Managed Service for Apache Spark, inclusi i consigli per la sicurezza della rete, Identity and Access Management, la crittografia e la configurazione sicura dei cluster.
Sicurezza della rete
Esegui il deployment di Managed Service for Apache Spark in un VPC privato. Crea un cloud privato virtuale dedicato Virtual Private Cloud per i cluster Managed Service for Apache Spark, isolandoli da altre reti e dalla rete internet pubblica.
Utilizza IP privati. Per proteggere i cluster Managed Service for Apache Spark dall'esposizione alla rete internet pubblica, utilizza indirizzi IP privati per una maggiore sicurezza e isolamento.
Configura le regole firewall. Implementa regole firewall rigorose per controllare il traffico da e verso i cluster Managed Service for Apache Spark. Consenti solo le porte e i protocolli necessari.
Utilizza il peering di rete. Per un maggiore isolamento, stabilisci il peering di rete VPC tra il VPC Managed Service for Apache Spark e altri VPC sensibili per una comunicazione controllata.
Attiva il gateway dei componenti. Attiva il gateway dei componenti Managed Service for Apache Spark quando crei i cluster per accedere in modo sicuro alle UI dell'ecosistema Hadoop, come la UI del server YARN, HDFS o Spark, anziché aprire le porte del firewall.
Identity and Access Management
Isola le autorizzazioni. Utilizza account di servizio del piano dati diversi per cluster diversi. Assegna ai service account solo le autorizzazioni di cui i cluster hanno bisogno per eseguire i workload.
Evita di fare affidamento sul service account predefinito di Google Compute Engine (GCE). Non utilizzare il service account predefinito per i cluster.
Rispetta il principio del privilegio minimo. Concedi solo le autorizzazioni minime necessarie a i service account e agli utenti di Managed Service for Apache Spark.
Applica controllo dell'accesso basato sui ruoli (RBAC). Valuta la possibilità di impostare le autorizzazioni IAM per ogni cluster.
Utilizza ruoli personalizzati. Crea ruoli IAM personalizzati con granularità fine, adatti a funzioni di job specifiche all'interno dell'ambiente Managed Service for Apache Spark.
Esegui revisioni regolari. Esegui regolarmente l'audit dei ruoli e delle autorizzazioni IAM per identificare e rimuovere eventuali privilegi eccessivi o inutilizzati.
Crittografia
Cripta i dati at-rest. Per la crittografia at-rest dei dati, utilizza il Cloud Key Management Service (KMS) o le chiavi di crittografia gestite dal cliente (CMEK). Inoltre, utilizza le policy dell'organizzazione per applicare la crittografia at-rest per la creazione dei cluster.
Cripta i dati in transito. Attiva SSL/TLS per la comunicazione tra i componenti di Managed Service for Apache Spark (attivando la modalità protetta di Hadoop) e i servizi esterni. In questo modo i dati in transito sono protetti.
Fai attenzione ai dati sensibili. Presta attenzione quando archivi e trasmetti dati sensibili come PII o password. Se necessario, utilizza soluzioni di crittografia e gestione dei secret.
Configurazione sicura dei cluster
Esegui l'autenticazione utilizzando Kerberos. Per impedire l'accesso non autorizzato alle risorse del cluster, implementa la modalità protetta di Hadoop utilizzando l'autenticazione Kerberos. Per ulteriori informazioni, consulta Proteggere il multi-tenant tramite Kerberos.
Utilizza una password dell'entità radice efficace e l'archiviazione sicura basata su KMS. Per i cluster che utilizzano Kerberos, Managed Service for Apache Spark configura automaticamente le funzionalità di hardening della sicurezza per tutti i componenti open source in esecuzione nel cluster.
Attiva OS Login. Attiva OS Login per una maggiore sicurezza quando gestisci i nodi del cluster utilizzando SSH.
Separa i bucket temporanei e di gestione temporanea in Google Cloud Storage (GCS). Per garantire l'isolamento delle autorizzazioni, separa i bucket temporanei e di gestione temporanea per ogni cluster Managed Service for Apache Spark.
Utilizza Secret Manager per archiviare le credenziali. Il Secret Manager può proteggere i tuoi dati sensibili, come chiavi API, password e certificati. Utilizzalo per gestire, accedere ed eseguire l'audit dei secret Google Cloud.
Utilizza vincoli personalizzati dell'organizzazione. Puoi utilizzare una policy dell'organizzazione personalizzata per consentire o negare operazioni specifiche sui cluster Managed Service for Apache Spark. Ad esempio, se una richiesta di creazione o aggiornamento di un cluster non soddisfa la convalida dei vincoli personalizzati impostata dalla policy dell'organizzazione, la richiesta non va a buon fine e viene restituito un errore al chiamante.
Passaggi successivi
Scopri di più su altre funzionalità di sicurezza di Managed Service for Apache Spark:
- Proteggere il multi-tenant tramite i service account
- Configurare una VM riservata con crittografia della memoria in linea
- Attivare un servizio di autorizzazione su ogni VM del cluster