Questa guida spiega come migliorare la sicurezza dei backup utilizzando le chiavi di crittografia gestite dal cliente (CMEK) con Backup e RE. Imparerai a concedere le autorizzazioni necessarie, creare vault di backup abilitati per CMEK e applicarli alle tue risorse, assicurandoti che i dati di backup siano protetti con le chiavi che controlli in Cloud Key Management Service. Questo è essenziale per soddisfare i requisiti di conformità e ottenere un maggiore controllo sulla crittografia dei dati.
Per saperne di più sui concetti di CMEK e sui tipi di workload supportati in Backup e RE, consulta Panoramica delle chiavi di crittografia gestite dal cliente (CMEK) con Backup e DR.
Prima di iniziare
Prima di iniziare a utilizzare CMEK, completa i seguenti passaggi:
Abilita l'API Cloud Key Management Service.
Sostituisci
PROJECT_IDcon l'ID del progetto in cui gestirai le chiavi.Crea un portachiavi e una chiave Cloud Key Management Service: quando crei la chiave, assicurati di selezionare una località che corrisponda a quella del vault di backup. Un vault di backup in una regione deve utilizzare una chiave della stessa regione.
Crea il service agent di Backup e RE, se necessario: il service agent viene in genere creato automaticamente quando viene creata la prima risorsa di Backup e RE (ad esempio una console di gestione o un vault di backup) in un progetto. Se devi concedere le autorizzazioni al service agent prima di creare qualsiasi risorsa di Backup e RE, attiva la sua creazione manualmente:
gcloud beta services identity create --service=backupdr.googleapis.com --project=PROJECT_ID
Sostituisci
PROJECT_IDcon l'ID del tuo progetto.
Autorizzazioni richieste per un vault di backup abilitato per CMEK
Il service agent di Backup e RE richiede le autorizzazioni per utilizzare la chiave Cloud KMS designata per criptare e decriptare i dati all'interno del vault di backup.
Per ottenere le autorizzazioni necessarie per criptare e decriptare i dati all'interno del vault di backup utilizzando CMEK, chiedi all'amministratore di concederti i seguenti ruoli IAM sulla chiave Cloud KMS designata per il vault di backup:
-
Al service agent di Backup e RE (
service-VAULT_PROJECT_NUMBER@gcp-sa-backupdr.iam.gserviceaccount.com): Autore crittografia/decriptazione CryptoKey Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter)Sostituisci
VAULT_PROJECT_NUMBERcon il numero del progetto contenente il vault di backup.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per criptare e decriptare i dati all'interno del vault di backup utilizzando CMEK. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Sono necessarie le seguenti autorizzazioni per criptare e decriptare i dati all'interno del vault di backup utilizzando CMEK:
-
Per criptare i dati con la versione della chiave:
cloudkms.cryptoKeyVersions.useToEncrypt -
Per decriptare i dati con la versione della chiave:
cloudkms.cryptoKeyVersions.useToDecrypt -
Per ottenere i metadati sulle località delle chiavi:
cloudkms.locations.get -
Per elencare le località delle chiavi:
cloudkms.locations.list -
Per ottenere i metadati sul progetto della chiave:
resourcemanager.projects.get
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Per concedere il ruolo richiesto al service agent gcp-sa-backupdr, segui queste istruzioni:
Console
Nella Google Cloud console, vai alla pagina Vault di backup.
Fai clic su Crea vault di backup.
Inserisci i dettagli necessari per il vault di backup, come nome e località.
Nella sezione Crittografia, seleziona Chiave di crittografia gestita dal cliente (CMEK) per utilizzare la tua chiave.
Fai clic su Seleziona una chiave gestita dal cliente e scegli la chiave Cloud KMS che vuoi utilizzare dal selettore.
Concessione dell'autorizzazione del service agent:
Dopo aver selezionato una chiave, la console verifica se il service agent di Backup e RE ha l'autorizzazione per utilizzarla. Il service agent si chiama service-VAULT_PROJECT_NUMBER@gcp-sa-backupdr.iam.gserviceaccount.com.
Se disponi di autorizzazioni sufficienti per la chiave, ad esempio
roles/cloudkms.admin, e il service agent non ha ancora accesso, la console potrebbe offrire di concedere automaticamente il ruoloroles/cloudkms.cryptoKeyEncrypterDecrypteral service agent di Backup e RE per la chiave selezionata.Se ti viene richiesto, conferma la concessione per consentire a Backup e RE di criptare e decriptare i dati nel vault utilizzando la tua chiave CMEK.
Se l'opzione di concessione automatica non è disponibile o se non hai l'autorizzazione per concedere i ruoli, devi concedere manualmente il ruolo
roles/cloudkms.cryptoKeyEncrypterDecrypteral service agent. Per istruzioni, consulta la schedagcloud.
Configura le altre impostazioni del vault di backup in base alle esigenze.
Fai clic su Crea.
gcloud
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 \
--project=KMS_PROJECT_ID
Sostituisci le variabili:
KEY_NAME: il nome della chiave CMEK.KMS_LOCATION: la regione del portachiavi.KEY_RING: il nome del portachiavi.VAULT_PROJECT_NUMBER: il numero del progetto in cui si trova il vault di backup.KMS_PROJECT_ID: l'ID progetto in cui viene gestita la chiave CMEK.
È consigliabile concedere il ruolo sulla chiave specifica, seguendo il principio del privilegio minimo.
Autorizzazioni richieste per il backup delle risorse esistenti protette da CMEK
Se la risorsa di origine di cui stai eseguendo il backup è già criptata con una diversa chiave CMEK, ad esempio un'istanza Compute Engine con dischi criptati con CMEK, il service agent del servizio della risorsa di origine ad esempio il service agent di Compute Engine, deve avere l'autorizzazione per accedere alla chiave che protegge la risorsa di origine.
Per ottenere le autorizzazioni necessarie per consentire al servizio di origine di accedere alla chiave CMEK durante le operazioni di backup, chiedi all'amministratore di concederti i seguenti ruoli IAM sulle chiavi CMEK che proteggono la risorsa di origine, ad esempio i dischi Compute Engine:
-
Al service agent del servizio che ospita la risorsa di origine:
in genere Cloud Key Management Service CryptoKey Encrypter/Decrypter (
roles/cloudkms.cryptoKeyEncrypterDecrypter)Ad esempio, per un'istanza Compute Engine criptata con CMEK, l'entità è il service agent di Compute Engine del progetto dell'istanza di origine.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per consentire al servizio di origine di accedere alla chiave CMEK durante le operazioni di backup. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Sono necessarie le seguenti autorizzazioni per consentire al servizio di origine di accedere alla chiave CMEK durante le operazioni di backup:
-
Per criptare i dati con la versione della chiave:
cloudkms.cryptoKeyVersions.useToEncrypt -
Per decriptare i dati con la versione della chiave:
cloudkms.cryptoKeyVersions.useToDecrypt -
Per ottenere i metadati sulle località delle chiavi:
cloudkms.locations.get -
Per elencare le località delle chiavi:
cloudkms.locations.list -
Per ottenere i metadati sul progetto della chiave:
resourcemanager.projects.get
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Utilizzare CMEK con Backup e RE
Crea 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 Tipo di crittografia e scegli la chiave Cloud Key Management Service che hai creato. CMEK può essere abilitata solo durante la creazione del vault. Non può essere aggiunta, rimossa o modificata in un vault esistente.
Crea un piano di backup. Quando crei un piano di backup, seleziona come destinazione il vault di backup abilitato per CMEK che hai creato.
Applica il piano di backup alle risorse. La compatibilità dipende dal tipo di risorsa e dalla relativa crittografia:
Istanze Compute Engine:
Crittografia del disco dell'istanza Crittografia del vault di backup Supportato Note Tutte gestite da Google Gestita da Google Sì Tutte gestite da Google CMEK Sì I backup verranno criptati con la chiave CMEK del vault di backup. Qualsiasi disco criptato con CMEK Gestita da Google No I backup delle istanze con dischi criptati con CMEK richiedono un vault di backup abilitato per CMEK. Qualsiasi disco criptato con CMEK CMEK Sì La chiave CMEK del vault di backup può essere diversa dalla chiave CMEK del disco. Volumi Persistent Disk:
I backup dei volumi Persistent Disk conservano sempre il metodo di crittografia del disco di origine.
Se il Persistent Disk di origine utilizza la crittografia gestita da Google, anche il backup utilizzerà la crittografia gestita da Google.
Se il Persistent Disk di origine utilizza CMEK, il backup sarà protetto dalla stessa versione della chiave CMEK del disco di origine.
L'impostazione di crittografia del vault di backup, CMEK o gestita da Google, non modifica la crittografia dei dati di backup di Persistent Disk. Tuttavia, potrebbero essere ancora applicate le policy dell'organizzazione. Consulta Policy dell'organizzazione per le chiavi CMEK.
Ripristinare i backup criptati con CMEK
Quando ripristini un carico di lavoro da un backup criptato con CMEK, la risorsa ripristinata utilizza per impostazione predefinita la stessa chiave Cloud Key Management Service che proteggeva la risorsa di origine al momento del backup. Durante la procedura di ripristino, puoi specificare una chiave Cloud Key Management Service diversa per la risorsa di destinazione.
In che modo rotazione della chiave Cloud Key Management Service influisce sulla ripristinabilità dei backup
Quando ruoti una chiave, Cloud Key Management Service crea una nuova versione della chiave, che diventa la versione principale. Backup e RE utilizza questa versione chiave primaria per criptare tutti i nuovi backup per i vault di backup configurati con quella chiave.
I backup esistenti rimangono criptati con la versione della chiave con cui sono stati creati originariamente. Per ripristinare un backup, la versione della chiave specifica utilizzata per criptarlo deve essere disponibile e abilitata in Cloud Key Management Service.
Conseguenze dell'inaccessibilità della versione della chiave
La disabilitazione o l'eliminazione di una versione della chiave rende inaccessibili tutti i backup criptati con quella versione.
Se Backup e RE non riesce ad accedere alla chiave CMEK perché è disabilitata, eliminata o le autorizzazioni sono state revocate, potrebbero verificarsi i seguenti risultati:
I nuovi backup nel vault di backup abilitato per CMEK non andranno a buon fine.
I ripristini dai backup non andranno a buon fine se la versione della chiave specifica per quel backup non è accessibile.
La creazione di nuovi vault di backup utilizzando una chiave inaccessibile non andrà a buon fine.
La riabilitazione di una versione della chiave disabilitata ripristina l'accesso. L'eliminazione di una versione della chiave è permanente e comporta la perdita irreversibile dei dati per i backup criptati con quella versione.
Come vengono applicate le policy dell'organizzazione per le chiavi CMEK
Puoi utilizzare i vincoli dei criteri dell'organizzazione per applicare i requisiti CMEK per le risorse di Backup e RE. Per saperne di più, consulta Policy dell'organizzazione per le chiavi CMEK.
Vincoli di creazione del vault di backup
constraints/gcp.restrictNonCmekServices: se applicato abackupdr.googleapis.com, tutti i nuovi vault di backup devono essere creati con CMEK.constraints/gcp.restrictCmekCryptoKeyProjects: se applicato, i vault di backup abilitati per CMEK devono utilizzare le chiavi di un progetto o di una cartella consentiti.
Vincoli delle operazioni di backup
constraints/gcp.restrictNonCmekServices: se applicato abackupdr.googleapis.com:Backup delle istanze Compute Engine: non vanno a buon fine se il vault di backup di destinazione utilizza la crittografia gestita da Google.
Backup di Persistent Disk: non vanno a buon fine se il disco permanente di origine utilizza la crittografia gestita da Google.
constraints/gcp.restrictCmekCryptoKeyProjects: se applicato:Backup delle istanze Compute Engine: se il vault di backup di destinazione è criptato con CMEK, la relativa chiave deve provenire da un progetto o da una cartella consentiti.
Backup di Persistent Disk: se il disco permanente di origine è criptato con CMEK, la relativa chiave deve provenire da un progetto o da una cartella consentiti.
Passaggi successivi
- Scopri come creare e gestire i vault di backup.