Best practice per la sicurezza di Managed Service per Apache Spark

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: