Usa CMEK con Dataproc serverless

Quando utilizzi Dataproc Serverless, i dati vengono archiviati su dischi serverless e in un Cloud Storage bucket gestione temporanea. Questi dati sono criptati utilizzando una chiave di crittografia dei dati (DEK, Data Encryption Key) generata da Google e la chiave di crittografia della chiave (KEK). Puoi utilizzare una chiave di crittografia gestita dal cliente (CMEK) per creare, utilizzare e revocare la chiave di crittografia della chiave (KEK). Google mantiene il controllo sulla chiave di crittografia dei dati (DEK, Data Encryption Key). Per ulteriori informazioni sulle chiavi di crittografia dei dati di Google, consulta Crittografia at-rest predefinita.

Utilizzo di CMEK

Segui i passaggi in questa sezione per utilizzare CMEK per criptare i dati che Dataproc Serverless scrive sul disco permanente e nel bucket gestione temporanea Dataproc.

  1. Crea una chiave utilizzando Cloud Key Management Service (Cloud KMS).

  2. Copia il nome della risorsa.

    Il nome della risorsa è creato come segue:
    projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
    

  3. Abilita l'agente di servizio di Compute Engine, Dataproc e Cloud Storage account di servizio per utilizzare la chiave:

    1. Consulta Proteggere le risorse utilizzando le chiavi Cloud KMS > Ruoli richiesti per assegnare il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS al Account di servizio dell'agente di servizio Compute Engine. Se questo account di servizio non è in elenco Nella pagina IAM della console Google Cloud, fai clic su Includi concessioni dei ruoli fornite da Google. per elencarlo.
    2. Assegna il autore della crittografia/decrittografia CryptoKey Cloud KMS all'account di servizio dell'agente di servizio Dataproc. Puoi utilizzare Google Cloud CLI per assegnare il ruolo:

       gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
       --member serviceAccount:service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com \
       --role roles/cloudkms.cryptoKeyEncrypterDecrypter
      

      Sostituisci quanto segue:

      KMS_PROJECT_ID: l'ID del tuo progetto Google Cloud che esegue Cloud KMS. Questo progetto può anche essere il progetto che esegue le risorse Dataproc.

      PROJECT_NUMBER: il numero del progetto (non l'ID) del progetto Google Cloud che esegue le risorse Dataproc.

    3. Abilita l'API Cloud KMS nel progetto che esegue le risorse Dataproc Serverless.

    4. Se il ruolo di Agente di servizio Dataproc non è collegato all'account di servizio dell'agente di servizio Dataproc, quindi aggiungi l'autorizzazione serviceusage.services.use al associato all'account di servizio dell'agente di servizio Dataproc. Se il ruolo Agente di servizio Dataproc è associato all'account di servizio dell'agente di servizio Dataproc, puoi saltare questo passaggio.

    5. Segui i passaggi per aggiungi la tua chiave al bucket.

  4. Quando invia un carico di lavoro batch:

    1. Specifica la chiave nel Batch kmsKey .
    2. Specifica il nome del tuo bucket Cloud Storage nel campo Batch. stagingBucket.