Chiavi di crittografia gestite dal cliente (CMEK)

Per impostazione predefinita, Google Cloud cripta automaticamente i dati a riposo utilizzando chiavi di crittografia gestite da Google. Se hai requisiti di conformità o normativi specifici relativi alle chiavi che proteggono i tuoi dati, puoi utilizzare le chiavi di crittografia gestite dal cliente (CMEK).

Con CMEK, puoi proteggere i dati di Backup e RE utilizzando una chiave di crittografia che controlli tramite Cloud Key Management Service (Cloud Key Management Service). Quando utilizzi CMEK, gestisci la chiave in Cloud Key Management Service e puoi controllare chi può accedervi gestendo le autorizzazioni di Identity and Access Management sulla chiave. Se disabiliti temporaneamente o elimini definitivamente la chiave CMEK, i dati protetti da questa chiave diventano inaccessibili. Per ulteriori informazioni su CMEK in generale, consulta Chiavi di crittografia gestite dal cliente (CMEK).

Come Backup e RE utilizza CMEK

Backup e RE possono proteggere i backup utilizzando CMEK in due modi, a seconda del tipo di risorsa: utilizzando una chiave CMEK configurata nel vault di backup o utilizzando la chiave CMEK della risorsa di origine.

Container del vault di backup

Un vault di backup è un container per i backup che fornisce uno spazio di archiviazione sicuro e isolato per i backup immutabili con conservazione forzata. Backup e RE possono proteggere i backup utilizzando CMEK tramite una chiave CMEK configurata nel vault di backup.

Crittografia tramite la chiave CMEK del vault di backup

Per alcuni tipi di risorse, un vault di backup abilitato per CMEK cripta i dati di backup utilizzando la chiave Cloud Key Management Service del vault.

Ad esempio, questo vale per i backup delle istanze Compute Engine. Se uno o più dischi collegati a un'istanza Compute Engine utilizzano CMEK, Backup e RE considera l'istanza protetta da CMEK. Devi eseguire il backup di queste istanze in un vault di backup abilitato per CMEK. Se tutti i dischi collegati a l'istanza utilizzano la crittografia gestita da Google, nella Google Cloud console devi archiviare i backup in un vault di backup non CMEK. Tuttavia, se utilizzi Google Cloud CLI, l'API o Terraform, puoi configurare i backup per un'istanza con crittografia gestita da Google in modo che utilizzi un vault di backup abilitato per CMEK. Quando archivi un backup in un vault di backup abilitato per CMEK, la chiave Cloud Key Management Service del vault cripta i dati di backup, indipendentemente dallo stato di crittografia del disco dell'istanza.

Backup a riposo

Un backup è una copia point-in-time dei dati di una risorsa protetta, archiviata in un vault di backup. A seconda del tipo di risorsa, un backup eredita la chiave del workload di origine o utilizza la chiave CMEK del vault di backup per proteggere i backup utilizzando CMEK.

Crittografia tramite la chiave CMEK della risorsa di origine

Per i tipi di workload che non consentono ai backup di utilizzare una chiave diversa dal workload di origine, Backup e RE utilizza la chiave di crittografia del workload di origine per proteggere i backup, mantenendo la crittografia della risorsa di origine.

Ad esempio, questo vale per i backup di Persistent Disk. Se il Persistent Disk di origine utilizza CMEK, anche i relativi backup utilizzano la stessa chiave CMEK. Se il Persistent Disk di origine utilizza la crittografia gestita da Google, anche i relativi backup utilizzano la crittografia gestita da Google. Devi archiviare questi backup in un vault di backup non configurato con CMEK.

La tabella seguente riassume la chiave di crittografia utilizzata per i backup di diversi tipi di workload:

Workload Chiave di crittografia utilizzata per il backup Stato del supporto CMEK
Istanza Compute Engine Chiave CMEK del vault di backup Supportato
Disco Compute Engine Chiave di crittografia del disco di origine Supportato
Cloud SQL - Non supportata
Cluster AlloyDB - Non supportata
Istanza Filestore - Non supportata
Google Cloud VMware Engine, database Oracle e database SQL Server - Non supportata

Limitazioni

Il supporto di Backup e RE per CMEK presenta le seguenti limitazioni:

  • La protezione CMEK è supportata solo per i backup delle istanze Compute Engine e di Persistent Disk archiviati nei vault di backup.
  • Puoi configurare CMEK in un vault di backup solo al momento della creazione. Non puoi abilitare, disabilitare o modificare CMEK in un vault di backup esistente.
  • La chiave Cloud Key Management Service deve trovarsi nella stessa località del vault di backup. Un vault di backup in una regione deve utilizzare una chiave della stessa regione. Un vault di backup multiregionale deve utilizzare una chiave della stessa multi-regione.
  • I backup interregionali devono utilizzare una chiave della stessa regione del vault di backup.

  • Backup e RE non supporta le chiavi di crittografia fornite dal cliente (CSEK).

  • Il vault di backup e il piano di backup predefiniti utilizzano la crittografia gestita da Google. Per utilizzare CMEK, devi creare un nuovo vault di backup e abilitare esplicitamente CMEK.

Prima di iniziare

Prima di iniziare a utilizzare CMEK, completa i seguenti passaggi:

  1. Abilita l'API Cloud Key Management Service nel progetto in cui verranno archiviate le chiavi CMEK.

    Abilitare l'API

  2. Crea un keyring e una chiave Cloud Key Management Service. Quando crei la chiave, assicurati di selezionare una località corrispondente a quella del vault di backup. Un vault di backup in una regione deve utilizzare una chiave della stessa regione. Un vault di backup multiregionale deve utilizzare una chiave della stessa multi-regione.

  3. Se non è già stato creato, crea il service agent di Backup e RE. Il service agent viene creato automaticamente dopo la creazione della prima risorsa di Backup e RE (vault di backup, Google Cloud console e così via) in un progetto. Se devi concedere le autorizzazioni al service agent prima di creare un vault di backup, puoi attivare la sua creazione con il seguente comando:

    gcloud beta services identity create --service=backupdr.googleapis.com --project=PROJECT_ID
    
    Sostituisci PROJECT_ID con l'ID del tuo progetto.

Concedere le autorizzazioni per CMEK

Affinché Backup e RE possa proteggere i backup utilizzando CMEK o eseguire il backup delle risorse protette da CMEK, devi concedere i ruoli IAM a service agent specifici.

Concedere l'autorizzazione per utilizzare la chiave CMEK del vault

Quando configuri CMEK per un vault di backup, Backup e RE ha bisogno dell'autorizzazione per utilizzare la chiave CMEK per criptare e decriptare i dati. Questa autorizzazione deve essere concessa al service agent di Backup e DR.

È importante distinguere tra due diversi service account utilizzati da Backup e RE:

  • Service agent di RE e DR: si tratta di un service account a livello di progetto utilizzato per gestire le risorse di Backup e RE e per accedere alle chiavi Cloud Key Management Service quando un vault di backup è configurato con CMEK. Questo è il service agent che richiede il ruolo roles/cloudkms.cryptoKeyEncrypterDecrypter sulla chiave CMEK.
  • Service account del vault di backup: si tratta di un service account univoco per ogni vault a cui concedi le autorizzazioni per accedere ed eseguire il backup dei workload di origine (ad esempio le istanze Compute Engine). Questo account di servizio non viene utilizzato per la crittografia CMEK dei dati all'interno del vault di backup.

Per utilizzare CMEK con Backup e RE, devi concedere il ruolo Cloud KMS CryptoKey Encrypter/Decrypter (roles/cloudkms.cryptoKeyEncrypterDecrypter) al service agent di Backup e RE. Questo service agent è un account di servizio utilizzato da Backup e RE per accedere alle risorse per tuo conto, incluso l'accesso alla chiave Cloud Key Management Service durante le operazioni di crittografia e decrittografia.

Il service agent di Backup e RE ha il seguente formato:

service-VAULT_PROJECT_NUMBER@gcp-sa-backupdr.iam.gserviceaccount.com

Sostituisci VAULT_PROJECT_NUMBER con il numero del progetto contenente il vault di backup.

Puoi concedere questo ruolo al momento della creazione del vault di backup utilizzando la Google Cloud console se hai le autorizzazioni per concedere i ruoli IAM oppure puoi concederlo in anticipo utilizzando il gcloud kms keys add-iam-policy-binding comando:

gcloud kms keys add-iam-policy-binding KEY_NAME \
    --location=KMS_LOCATION \
    --keyring=KEY_RING \
    --member=serviceAccount:service-VAULT_PROJECT_NUMBER@gcp-sa-backupdr.iam.gserviceaccount.com \
    --role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Puoi concedere questo ruolo a una chiave specifica, come mostrato nell'esempio, oppure puoi concederlo a livello di keyring o progetto. La concessione delle autorizzazioni a livello di chiave fornisce il controllo più granulare ed è consigliata per il principio del privilegio minimo. La concessione delle autorizzazioni a livello di progetto o keyring è più comoda se intendi che Backup e RE utilizzi più chiavi all'interno di questo ambito, ma concede autorizzazioni più ampie.

Concedere l'autorizzazione per eseguire il backup delle risorse protette da CMEK

Se esegui il backup di una risorsa criptata con una chiave CMEK diversa, ad esempio un'istanza Compute Engine con dischi criptati con CMEK, sono necessarie autorizzazioni aggiuntive. Il service agent del servizio della risorsa di origine ha bisogno dell'autorizzazione per utilizzare le chiavi che proteggono la risorsa di origine. Ad esempio, per eseguire il backup di un'istanza Compute Engine criptata con CMEK, il service agent Compute Engine del progetto dell'istanza di origine deve avere il ruolo roles/cloudkms.cryptoKeyEncrypterDecrypter sulle chiavi Cloud Key Management Service utilizzate per criptare i dischi dell'istanza. Nella maggior parte dei casi, questa autorizzazione è già in vigore per il funzionamento del workload di origine.

Utilizzare CMEK con Backup e RE

Questa sezione descrive il flusso di lavoro per proteggere i backup utilizzando CMEK.

1. Creare un vault di backup abilitato per CMEK

Quando crei un vault di backup, seleziona l'opzione Chiave di crittografia gestita dal cliente (CMEK) nella sezione Crittografia e scegli la chiave Cloud Key Management Service che hai creato. Puoi abilitare CMEK solo durante la creazione del vault; non può essere abilitata, disabilitata o modificata in un vault esistente.

2. Creare un piano di backup

Quando crei un piano di backup, seleziona il vault di backup abilitato per CMEK che hai creato nel passaggio precedente come vault di backup di destinazione per i backup.

3. Applicare il piano di backup alle risorse

Quando applichi un piano di backup a una risorsa, devi assicurarti che il piano di backup sia destinato a un vault di backup compatibile con la configurazione di crittografia della risorsa:

  • Se esegui il backup di un'istanza Compute Engine a cui sono collegati uno o più dischi criptati con CMEK, devi utilizzare un piano di backup destinato a un vault di backup abilitato per CMEK.
  • Se esegui il backup di un'istanza Compute Engine in cui tutti i dischi collegati utilizzano la crittografia gestita da Google, puoi utilizzare un piano di backup destinato a un vault di backup non CMEK o a un vault di backup abilitato per CMEK. Se utilizzi un vault di backup abilitato per CMEK, i backup dell'istanza verranno criptati con la chiave CMEK del vault di backup.
  • Se esegui il backup di un Persistent Disk che utilizza la crittografia gestita da Google, devi utilizzare un piano di backup destinato a un vault di backup non CMEK.

Assicurati di aver concesso le autorizzazioni KMS richieste, come descritto in Concedere le autorizzazioni per CMEK, affinché i backup vengano eseguiti correttamente.

Rotazione della chiave Cloud Key Management Service e ripristinabilità dei backup

Backup e RE supporta la rotazione della chiave Cloud Key Management Service. Quando ruoti una chiave, Cloud Key Management Service crea una nuova versione della chiave, che diventa la versione primaria. Backup e RE utilizza la versione della chiave primaria per criptare tutti i nuovi backup per i vault di backup configurati con questa chiave.

I backup esistenti non vengono ricriptati e rimangono criptati con la versione della chiave con cui sono stati creati. Per ripristinare un backup, la versione della chiave utilizzata per criptarlo deve essere disponibile in Cloud Key Management Service. Se disabiliti o elimini una versione della chiave, tutti i backup criptati con questa versione diventano inaccessibili. Per garantire la ripristinabilità dei backup, non disabilitare o eliminare le versioni delle chiavi ancora in uso dai backup che potresti dover ripristinare.

Se Backup e RE non riesce ad accedere alla chiave CMEK per qualsiasi motivo (ad esempio, se la versione della chiave richiesta per la crittografia o la decrittografia è disabilitata o eliminata oppure se le autorizzazioni IAM sulla chiave vengono revocate dal service agent di Backup e RE), potresti riscontrare i seguenti problemi:

  • I nuovi backup nei vault di backup abilitati per CMEK non riusciranno se la versione della chiave primaria è inaccessibile.
  • I ripristini dai vault di backup non riusciranno se la versione della chiave specifica utilizzata per criptare il backup è inaccessibile.
  • Non potrai creare nuovi vault di backup che utilizzano una chiave inaccessibile.

Se hai disabilitato una versione della chiave utilizzata per i backup, la riattivazione ripristina l'accesso ai backup criptati con questa versione. Se elimini una versione della chiave, tutti i backup criptati con questa versione della chiave vengono persi definitivamente e non possono essere ripristinati.

Policy dell'organizzazione CMEK

Puoi utilizzare il servizio Policy dell'organizzazione per applicare l'utilizzo di CMEK sulle risorse di Backup e RE a livello di organizzazione, cartella o progetto. Per ulteriori informazioni, consulta Policy dell'organizzazione CMEK.

Se viene creato un vault di backup o viene tentato un backup in violazione di queste policy, l'operazione non riesce. Se applichi una policy dell'organizzazione CMEK dopo aver creato i piani di backup, tutte le pianificazioni di backup esistenti di questi piani non riusciranno se non sono conformi alla policy. Puoi utilizzare queste policy in modo indipendente o in combinazione per soddisfare i requisiti CMEK della tua organizzazione.

Le sezioni seguenti descrivono come i vincoli delle policy dell'organizzazione CMEK si applicano a diverse risorse di Backup e RE.

Container del vault di backup

Quando utilizzi le policy dell'organizzazione CMEK, puoi applicare i seguenti vincoli durante la creazione del vault di backup:

  • Se constraints/gcp.restrictNonCmekServices è applicato a backupdr.googleapis.com, devi configurare CMEK quando crei un nuovo vault di backup. Non puoi creare un vault di backup che utilizza la crittografia gestita da Google.
  • Se constraints/gcp.restrictCmekCryptoKeyProjects è applicato e crei un vault di backup abilitato per CMEK, devi selezionare una chiave da un progetto o una cartella consentiti.

Backup a riposo

Quando utilizzi le policy dell'organizzazione CMEK, puoi applicare i seguenti vincoli durante la creazione dei backup:

  • Se constraints/gcp.restrictNonCmekServices è applicato a backupdr.googleapis.com, non è possibile creare nuovi backup se utilizzano la crittografia gestita da Google anziché CMEK:
    • Backup dell'istanza Compute Engine: il backup non riesce se il vault di backup di destinazione utilizza la crittografia gestita da Google.
    • Backup di Persistent Disk: il backup non riesce se il Persistent Disk di origine utilizza la crittografia gestita da Google.
  • Se constraints/gcp.restrictCmekCryptoKeyProjects è applicato, le risorse protette da CMEK devono utilizzare una chiave di un progetto o una cartella consentiti:
    • Backup dell'istanza Compute Engine: se il vault di backup è criptato con CMEK, la relativa chiave deve provenire da un progetto o una cartella consentiti. In caso contrario, i backup in questo vault non riusciranno.
    • Backup di Persistent Disk: se il Persistent Disk di origine è criptato con CMEK, la relativa chiave deve provenire da un progetto o una cartella consentiti. In caso contrario, i backup di questo disco non riusciranno. I backup di Persistent Disk utilizzano la chiave di crittografia del disco di origine per proteggere i backup, non la chiave del vault di backup.

Prezzi

Backup e RE non addebita costi aggiuntivi per l'utilizzo di CMEK. Tuttavia, ti vengono addebitati i costi per l'utilizzo delle chiavi in Cloud Key Management Service. Per ulteriori informazioni, consulta Prezzi di Cloud Key Management Service.

Passaggi successivi