Questo documento descrive come utilizzare le chiavi di crittografia gestite dal cliente (CMEK) in Cloud Key Management Service (Cloud KMS) per le istanze Memorystore for Valkey. Il documento descrive anche quali dati vengono criptati nello spazio di archiviazione persistente e come si comportano le istanze durante gli eventi del ciclo di vita delle chiavi.
CMEK ti consente di controllare le chiavi crittografiche che proteggono i dati archiviati. Gestendo le tue chiavi in Cloud KMS, ottieni un maggiore controllo su accesso, rotazione e utilizzo delle chiavi, il che ti aiuta a soddisfare requisiti normativi e di conformità rigorosi.
L'implementazione di CMEK fornisce un ulteriore livello di sicurezza e controllo sui tuoi dati permanenti, come backup e file di persistenza. Puoi abilitare CMEK solo su nuove istanze. Non puoi applicare CMEK alle istanze esistenti.
Chi dovrebbe utilizzare CMEK?
Le chiavi CMEK sono destinate alle organizzazioni che dispongono di dati sensibili o regolamentati e richiedono il controllo delle proprie chiavi di crittografia. Per saperne di più sull'utilizzo di CMEK per criptare questi dati, consulta Decidere se utilizzare CMEK.
Crittografia gestita dal cliente
CMEK ti consente di utilizzare le tue chiavi di crittografia per proteggere i dati archiviati nelle istanze Memorystore for Valkey. Per criptare questi dati, Memorystore for Valkey utilizza chiavi di crittografia dei dati (DEK) gestite da Google e chiavi di crittografia della chiave (KEK) gestite dal cliente.
Puoi avere i seguenti livelli di crittografia:
- Crittografia DEK: le DEK criptano i dati in Memorystore for Valkey.
- Crittografia KEK: le KEK criptano le DEK.
Memorystore for Valkey utilizza le KEK per criptare le DEK e le DEK per criptare i dati archiviati. Se utilizzi CMEK, puoi gestire le KEK che criptano le DEK nella tua istanza.
Il seguente diagramma mostra come un'istanza utilizza CMEK per criptare i dati. I dati caricati nell'infrastruttura di archiviazione di Google vengono suddivisi in blocchi e ogni blocco viene criptato con una propria DEK. Cloud KMS fornisce la KEK per criptare le DEK e l'infrastruttura di archiviazione di Google distribuisce sia i blocchi di dati criptati sia le DEK criptate nel sistema.
Il seguente diagramma mostra come Memorystore for Valkey decripta i dati criptati con CMEK. Per accedere a questi dati criptati, Memorystore for Valkey invia una richiesta a Cloud KMS, che gestisce la KEK, per decriptare la DEK. Cloud KMS restituisce quindi la DEK decriptata, che l'istanza utilizza per decriptare i dati archiviati.

Quali dati vengono criptati utilizzando CMEK?
CMEK cripta i seguenti tipi di dati dei clienti archiviati in uno spazio di archiviazione permanente:
- Backup: i backup consentono di recuperare i dati a un momento specifico, nonché di esportarli e analizzarli. I backup sono utili anche per scenari di ripristino di emergenza, migrazione dei dati, condivisione dei dati e conformità.
- Persistenza:
Memorystore for Valkey supporta due tipi di persistenza:
- Persistenza RDB: salva snapshot dei tuoi dati in uno spazio di archiviazione durevole.
- Persistenza AOF: archivia i dati in modo duraturo registrando ogni comando di scrittura in un file di log chiamato Append-Only File (AOF). Se si verifica un errore o un riavvio del sistema, il server riproduce i comandi del file AOF in sequenza per ripristinare i dati.
- Metadati relativi a funzionalità di sicurezza come l'autenticazione di base basata su token e la crittografia in transito. Per saperne di più, consulta Accedere in modo sicuro alle tue istanze utilizzando l'autenticazione di base basata su token e Informazioni sulla crittografia in transito.
Componenti CMEK
Le sezioni seguenti descrivono i requisiti e i comportamenti degli account di servizio, delle chiavi di crittografia, delle versioni delle chiavi e delle policy dell'organizzazione che compongono l'architettura CMEK.
Service account
Per creare un'istanza abilitata a CMEK, devi concedere il ruolo
roles/cloudkms.cryptoKeyEncrypterDecrypter al account di servizio Memorystore for Valkey
che utilizza il seguente formato:
service-PROJECT_NUMBER@gcp-sa-memorystore.iam.gserviceaccount.com
La concessione di questa autorizzazione consente al account di servizio di richiedere l'accesso alla chiave da Cloud KMS.
Chiavi
In Cloud KMS, devi creare un keyring e poi una chiave di crittografia che utilizzi un algoritmo di crittografia simmetrica. Quando crei un'istanza Memorystore for Valkey, selezioni questa chiave per criptare l'istanza. Puoi creare un progetto per le chiavi e le istanze oppure progetti diversi per ciascuno.
CMEK è disponibile in tutte le località delle istanze Memorystore for Valkey. Devi creare il portachiavi e la chiave nella stessa regione in cui vuoi creare l'istanza. Per un'istanza multiregionale, devi impostare il keyring e la chiave nella stessa località dell'istanza. Se le regioni o le località non corrispondono, una richiesta di creazione dell'istanza non va a buon fine.
Per l'ID risorsa della chiave, CMEK utilizza il seguente formato:
projects/CMEK_ENABLED_PROJECT/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Per saperne di più su come trovare gli ID risorsa delle chiavi esistenti, consulta Recupero di un ID risorsa di Cloud KMS.
Chiavi esterne
Nell'ambito della tua strategia CMEK, puoi utilizzare chiavi esterne. Per farlo, utilizza Cloud External Key Manager (Cloud EKM) per criptare i dati all'interno di Google Cloud utilizzando chiavi esterne che gestisci.
Quando utilizzi una chiave Cloud EKM, Google non ha alcun controllo sulla disponibilità delle chiavi gestite esternamente. Se una chiave non è disponibile quando crei l'istanza, Memorystore for Valkey non la crea. Inoltre, se la chiave esterna non è più disponibile in qualsiasi momento dopo la creazione dell'istanza, Memorystore for Valkey disattiva i backup e la persistenza, ma le normali operazioni di memorizzazione nella cache in memoria continuano a gestire il traffico.
Per ulteriori considerazioni sull'utilizzo di chiavi esterne, vedi Considerazioni.
Versioni delle chiavi
Cloud KMS archivia il materiale della chiave di crittografia che utilizzi per criptare e decriptare i dati in una versione della chiave. Una singola chiave può contenere più versioni. Ogni volta che ruoti una chiave, crei una versione della chiave.
Le sezioni seguenti descrivono il comportamento delle istanze e dei relativi dati protetti durante gli eventi chiave del ciclo di vita, come la disattivazione, l'eliminazione, la rotazione, l'attivazione o il ripristino delle versioni delle chiavi. Le sezioni spiegano anche l'impatto della revoca dell'accesso a una chiave Cloud KMS o della sua sostituzione e forniscono indicazioni sulla ricrittografia manuale dei dati.
Disattivazione o eliminazione della versione di una chiave CMEK
Potresti trovarti in situazioni in cui vuoi rendere inaccessibili in modo permanente i dati criptati con CMEK, ad esempio quando stai correggendo una perdita di dati. Per ottenere questa eliminazione dei dati ad alta affidabilità (nota anche come eliminazione della crittografia), elimina la versione della chiave. Per ulteriori informazioni sull'eliminazione delle versioni delle chiavi, consulta Eliminare e ripristinare le versioni delle chiavi.
Se disabiliti o elimini la versione della chiave primaria, ai backup e alla persistenza si applicano le seguenti condizioni.
Backup
Quando elimini la versione della chiave primaria, ai backup dell'istanza si applicano le seguenti limitazioni:
- Non puoi creare backup on demand o automatici. Tuttavia, se abiliti una versione precedente della chiave, puoi accedere a tutti i backup creati utilizzando questa versione della chiave.
- Non puoi aggiornare o riattivare i backup automatici finché non abiliti o ripristini la versione della chiave primaria. Per maggiori informazioni, consulta Attivare o ripristinare la versione della chiave CMEK primaria.
Persistenza
Quando elimini la versione della chiave primaria, si applicano le seguenti limitazioni alla persistenza per la tua istanza:
- Se configuri l'istanza in modo che utilizzi la persistenza, Memorystore for Valkey disattiva la persistenza quando la versione della chiave non è più disponibile. Non ti viene più addebitato l'utilizzo della persistenza.
- Memorystore for Valkey non scarica i nuovi dati nell'archiviazione permanente utilizzando la chiave CMEK.
- Memorystore for Valkey non può leggere i dati esistenti presenti nello spazio di archiviazione permanente.
- Non puoi aggiornare o riattivare la persistenza finché non abiliti o ripristini la versione della chiave primaria.
Se abiliti la versione della chiave primaria, ma disabiliti o elimini una versione precedente della chiave, si applicano le seguenti condizioni a backup e persistenza:
- Puoi creare backup. Tuttavia, se un backup è criptato con una versione precedente della chiave disabilitata o eliminata, il backup rimane inaccessibile.
- Se abiliti la persistenza, questa rimane abilitata. Se la versione precedente della chiave utilizzata nella persistenza viene disabilitata o eliminata, Memorystore for Valkey esegue un aggiornamento simile a quello utilizzato nella manutenzione e ricripta i dati con la versione della chiave primaria.
Revoca dell'accesso a una chiave Cloud KMS
Se revochi l'accesso a una chiave Cloud KMS attiva disattivando la chiave o rimuovendo le autorizzazioni IAM per la chiave, Memorystore for Valkey dà la priorità alla disponibilità della cache principale. Le normali operazioni di memorizzazione nella cache in memoria continuano a gestire il traffico.
Tuttavia, i backup e la persistenza sono disattivati. Memorystore for Valkey interrompe immediatamente la scrittura di nuovi dati sul disco e non legge i dati dal disco criptato dal cliente in memoria.
Rotazione della versione della chiave CMEK primaria
Se ruoti la versione della chiave primaria e ne crei una nuova, si applicano le seguenti condizioni a backup e persistenza:
- L'ultima versione della chiave primaria di CMEK cripta i nuovi backup.
- Per i backup esistenti, non viene eseguita alcuna ri-crittografia.
- Per la persistenza, i nodi non eseguono alcuna azione. I nodi continuano a utilizzare la versione precedente della chiave fino al successivo evento di manutenzione.
Ricrittografare manualmente i dati protetti da CMEK
Memorystore for Valkey non supporta la ri-crittografia on demand dei dati archiviati. Non puoi attivare manualmente un processo per utilizzare una nuova versione della chiave per criptare nuovamente i backup esistenti o i file di persistenza attivi. Tuttavia, puoi utilizzare la nuova versione della chiave per criptare i dati appena scritti.
Se ruoti una chiave e devi forzare un'istanza a utilizzare la nuova versione della chiave, allora si applicano le seguenti condizioni ai backup e alla persistenza:
Backup
Non puoi crittografare nuovamente i backup esistenti. Se la conformità richiede che tutti i dati vengano criptati con la chiave più recente, crea un backup che utilizzi questa chiave, quindi elimina manualmente i backup esistenti. Puoi anche esportare questo backup in un bucket Cloud Storage in modo che venga utilizzata la chiave di crittografia di Cloud Storage.
Persistenza
Per forzare l'istanza a utilizzare una nuova chiave Cloud KMS, puoi eseguire la manutenzione simulata sull'istanza. Una volta completata questa operazione, Memorystore for Valkey può scrivere dati di persistenza utilizzando la versione aggiornata della chiave primaria.
Sostituzione di una chiave Cloud KMS protetta
Se sostituisci una chiave Cloud KMS protetta con una chiave diversa o con una nuova versione della chiave primaria, Memorystore for Valkey applica questa modifica solo alle operazioni future.
La sostituzione di una chiave protetta influisce sulle tue risorse nei seguenti modi:
- Backup: tutti i backup successivi vengono criptati utilizzando la nuova chiave. I backup esistenti mantengono le chiavi originali.
- Persistenza: la volta successiva che l'istanza viene riavviata o viene eseguita una manutenzione, viene utilizzata la nuova chiave.
- Cache principale: la sostituzione di questa chiave non ha alcun impatto. CMEK non cripta i dati in memoria perché non sono considerati dati archiviati.
Abilitazione o ripristino della versione della chiave CMEK primaria
Se abiliti o ripristini la versione della chiave primaria, ai backup e alla persistenza si applicano le seguenti condizioni:
- Puoi creare di nuovo backup on demand e automatici.
- Memorystore for Valkey esegue un aggiornamento simile a quello utilizzato nella manutenzione e riattiva la persistenza.
Vincoli delle policy dell'organizzazione
Memorystore for Valkey supporta i vincoli dei criteri dell'organizzazione per CMEK. Utilizzando questi vincoli, puoi applicare la protezione CMEK alle tue istanze e limitare le chiavi Cloud KMS che puoi utilizzare per questa protezione.
Puoi configurare i seguenti vincoli dei criteri dell'organizzazione:
constraints/gcp.restrictNonCmekServices: utilizza questo vincolo per applicare la protezione CMEK alle tue istanze. Se l'API Memorystore for Valkey si trova nell'elenco dei servizi del criterioDenyper questo vincolo, non puoi creare istanze non protette da CMEK.constraints/gcp.restrictCmekCryptoKeyProjects: utilizza questo vincolo per limitare le chiavi Cloud KMS che puoi utilizzare per la protezione CMEK. Se configuri questo vincolo, le istanze che utilizzano la crittografia CMEK devono utilizzare una chiave di un progetto, una cartella o un'organizzazione consentiti.
Per saperne di più sui vincoli delle policy dell'organizzazione correlati a CMEK che Google gestisce per Memorystore for Valkey, consulta Vincoli delle policy dell'organizzazione.
Prezzi
Memorystore for Valkey fattura un'istanza abilitata per CMEK come qualsiasi altra istanza; non sono previsti costi aggiuntivi. Per maggiori informazioni, consulta la pagina Prezzi di Memorystore for Valkey.
Per gestire le chiavi CMEK, utilizzi l'API Cloud KMS. Quando crei un'istanza Memorystore for Valkey con CMEK, Memorystore utilizza la chiave periodicamente per criptare i dati.
Cloud KMS ti addebita il costo della chiave e delle operazioni di crittografia e decrittografia quando Memorystore for Valkey utilizza la chiave. Per maggiori informazioni, consulta la pagina Prezzi di Cloud KMS.
Limitazioni
Quando utilizzi CMEK con Memorystore for Valkey, si applicano le seguenti limitazioni:
- Non puoi abilitare CMEK su un'istanza Memorystore for Valkey esistente.
- La chiave, il portachiavi e l'istanza devono trovarsi nella stessa regione.
- Devi utilizzare l'algoritmo di crittografia simmetrica per la chiave.
- Le velocità di crittografia e decrittografia di Cloud KMS sono soggette a una quota.
Passaggi successivi
- Scopri di più su CMEK.
- Scopri come migliorare la sicurezza dei dati utilizzando CMEK.
- Scopri di più sui backup.
- Scopri di più sulla persistenza.