Utilizzo delle chiavi di crittografia gestite dal cliente

Questa pagina spiega come utilizzare le chiavi di crittografia gestite dal cliente (CMEK). per proteggere i servizi Dataproc Metastore. CMEK fornisce la crittografia i dati at-rest con una chiave che puoi controllare tramite Cloud Key Management Service. Puoi archiviare le chiavi come chiavi software in un cluster HSM oppure esternamente.

Prima di iniziare

Se vuoi che il tuo servizio Dataproc Metastore venga eseguito all'interno di un Controlli di servizio VPC, devi aggiungere l'API Cloud Key Management Service (Cloud KMS) al perimetro.

Configurare il supporto di CMEK per Dataproc Metastore

Per configurare il supporto CMEK per Dataproc Metastore, deve prima concedere a Dataproc Metastore l'autorizzazione per la chiave Cloud KMS e Cloud Storage. Poi puoi creare un Dataproc Metastore che utilizza una chiave CMEK.

Concedi le autorizzazioni alla chiave Cloud KMS

Utilizza i comandi seguenti per concedere le autorizzazioni per la chiave Cloud KMS per Dataproc Metastore:

gcloud

  1. Crea una chiave CMEK in Cloud KMS (se non è già disponibile). Il seguente comando è un esempio di come creare una chiave software:

    gcloud config set project PROJECT_ID
    gcloud kms keyrings create KEY_RING \
      --project KEY_PROJECT \
      --location=LOCATION
    gcloud kms keys create KEY_NAME \
      --project KEY_PROJECT \
      --location=LOCATION \
      --keyring=KEY_RING \
      --purpose=encryption

    Analogamente, puoi creare una chiave HSM o creare una chiave EKM.

  2. Concedi le autorizzazioni all'account di servizio Agente di servizio Dataproc Metastore:

    gcloud kms keys add-iam-policy-binding KEY_NAME \
      --location LOCATION \
      --keyring KEY_RING \
      --member=serviceAccount:$(gcloud beta services identity create \
      --service=metastore.googleapis.com 2>&1 | awk '{print $4}') \
      --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
  3. Concedi le autorizzazioni all'account di servizio Cloud Storage:

    gcloud storage service-agent --authorize-cmek projects/KEY_PROJECT/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME

Crea un servizio Dataproc Metastore con una chiave CMEK

Segui questi passaggi per configurare la crittografia CMEK durante la creazione del servizio:

Console

  1. Nella console Google Cloud, apri la pagina Dataproc Metastore:

    Vai a Dataproc Metastore

  2. Nella parte superiore della pagina Dataproc Metastore, fai clic su Crea.

    Viene visualizzata la pagina Crea servizio.

  3. Configura il servizio in base alle tue esigenze.

  4. In Crittografia, fai clic su Usa una chiave di crittografia gestita dal cliente (CMEK).

  5. Seleziona la chiave gestita dal cliente.

  6. Fai clic su Invia.

Verifica la configurazione della crittografia del servizio:

  1. Nella console Google Cloud, apri la pagina Dataproc Metastore:

    Vai alla console Google Cloud

  2. Nella pagina Dataproc Metastore, fai clic sul nome del servizio che vuoi visualizzare.

    Nella pagina Dettagli del servizio per quel servizio. si apre.

  3. Nella scheda Configurazione, verifica che i dettagli mostrino che la CMEK è in un bucket in cui è abilitato il controllo delle versioni.

gcloud

  1. Esegui gcloud metastore services create. per creare un servizio con crittografia CMEK:

    gcloud metastore services create SERVICE \
       --encryption-kms-key=KMS_KEY
    

    Sostituisci quanto segue:

    • SERVICE: il nome del nuovo servizio.
    • KMS_KEY: si riferisce all'ID risorsa della chiave.
  2. Verifica che la creazione sia riuscita.

Dati di Dataproc Metastore protetti con chiavi di crittografia fornite da Google

Il database Cloud Monitoring non supporta la crittografia CMEK. Google Cloud utilizza invece le chiavi di crittografia di Google per proteggere i nomi e le configurazioni dei servizi dei tuoi servizi Dataproc Metastore.

Importa ed esporta dati da e in un servizio abilitato per CMEK

Se vuoi che i dati rimangano criptati con una chiave gestita dal cliente durante un'importazione, devi impostare la chiave CMEK sul bucket Cloud Storage prima di importarne i dati.

Puoi eseguire l'importazione da un bucket Cloud Storage protetto da CMEK non CMEK. Dopo il giorno l'importazione, i dati archiviati in Dataproc Metastore sono protetti in base alle impostazioni CMEK del servizio di destinazione.

Durante l'esportazione, il dump del database esportato è protetto in base alle impostazioni CMEK del bucket di archiviazione di destinazione.

Avvertenze CMEK per Dataproc Metastore

  • La disabilitazione o l'eliminazione della CMEK per un servizio abilitato per CMEK rende il servizio inutilizzabili e non recuperabili.

    • I dati vengono persi definitivamente.
  • Non puoi attivare le chiavi di crittografia gestite dal cliente su un servizio esistente.

  • Non puoi ruotare la chiave utilizzata da un servizio abilitato per CMEK.

  • Un servizio abilitato per CMEK non supporta la sincronizzazione di Data Catalog. L'aggiornamento di un servizio abilitato per CMEK per attivare la sincronizzazione di Data Catalog non riesce. Inoltre, non puoi creare un nuovo servizio con entrambe le funzionalità attivate.

  • Non puoi utilizzare le chiavi di crittografia gestite dal cliente per criptare i dati utente in transito, ad esempio query e risposte degli utenti.

  • Quando utilizzi una chiave Cloud EKM, Google non ha alcun controllo sulla disponibilità della chiave gestita esternamente. Se la chiave non è disponibile durante il periodo di creazione del servizio Dataproc Metastore, la creazione del servizio non va a buon fine. Dopo aver creato un servizio Dataproc Metastore, se la chiave non è disponibile, il servizio non sarà disponibile fino a quando la chiave non sarà disponibile. Per ulteriori considerazioni sull'utilizzo di consulta Considerazioni su Cloud EKM.

Passaggi successivi