Utilizzo delle chiavi di crittografia gestite dal cliente (CMEK)

Utilizzando le chiavi di crittografia gestite dal cliente (CMEK), hai il controllo sulle tue chiavi. Questo ti consente di controllare il livello di protezione, la località, la pianificazione della rotazione, le autorizzazioni di utilizzo e di accesso e i limiti crittografici. Invece di Google, sei tu ad avere la proprietà e la gestione delle chiavi di crittografia della chiave (KEK) simmetriche che proteggono i tuoi dati. Puoi controllare e gestire queste chiavi in Cloud Key Management Service (KMS).

Prima di iniziare

  1. Assicurati di avere il ruolo Amministratore Redis nel tuo account utente.

    Vai alla pagina IAM

Flusso di lavoro per creare un cluster che utilizza CMEK

  1. Crea un key ring e una chiave nella località in cui vuoi che si trovi il cluster in Memorystore for Redis Cluster.

  2. Copia o annota il nome della chiave (KEY_NAME), la località della chiave e il nome della chiave automatizzata (KEY_RING). Avrai bisogno di queste informazioni quando concedi al account di servizio l'accesso alla chiave.

  3. Concedi al account di servizio di Memorystore for Redis Cluster l'accesso alla chiave.

  4. Vai a un progetto e crea un cluster in Memorystore for Redis Cluster con CMEK abilitato nella stessa regione della chiave automatizzata e della chiave.

CMEK è ora abilitato per il cluster.

Creare una chiave e una chiave automatizzata

Crea un portachiavi e una chiave. Entrambe devono trovarsi nella stessa regione del cluster in Memorystore for Redis Cluster. La chiave può provenire da un progetto diverso, purché si trovi nella stessa regione. Inoltre, la chiave deve utilizzare l'algoritmo di crittografia simmetrica.

Dopo aver creato la chiave automatizzata e la chiave, copia o annota KEY_NAME, la località della chiave e KEY_RING. Avrai bisogno di queste informazioni quando concedi al account di servizio l'accesso alla chiave.

Concedere al account di servizio di Memorystore for Redis Cluster l'accesso alla chiave

Prima di poter creare un cluster in Memorystore for Redis Cluster che utilizza CMEK, devi concedere a un account di servizio specifico di Memorystore for Redis Cluster l'accesso alla chiave.

Puoi concedere al account di servizio l'accesso alla chiave utilizzando il gcloud CLI. Per concedere l'accesso al account di servizio, utilizza il seguente formato:

  service-PROJECT_NUMBER@cloud-redis.iam.gserviceaccount.com
  

gcloud

Per concedere al account di servizio l'accesso alla chiave, utilizza il gcloud kms keys add-iam-policy-binding comando.

gcloud kms keys add-iam-policy-binding  \
projects/PROJECT_ID/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--member=serviceAccount:service-PROJECT_NUMBER@cloud-redis.iam.gserviceaccount.com \
--role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Esegui le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero del progetto che contiene la chiave automatizzata
  • REGION_ID: la regione in cui si trova la chiave automatizzata
  • KEY_RING: il nome della chiave automatizzata che contiene la chiave
  • KEY_NAME: il nome della chiave a cui stai concedendo l'accesso al account di servizio
  • PROJECT_NUMBER: l'ID o il numero del progetto che contiene il account di servizio

Creare un cluster che utilizza CMEK

Puoi creare un cluster che utilizza CMEK utilizzando gcloud CLI.

gcloud

Per creare un cluster che utilizza CMEK, utilizza il gcloud redis clusters create comando.

gcloud redis clusters create CLUSTER_ID \
--project=PROJECT_NAME \
--region=REGION_ID \
--network=NETWORK_ID \
--kms-key=projects/PROJECT_NAME/locations/REGION_ID/keyRings/KEY_RING/cryptoKeys/KEY_NAME \
--shard-count=SHARD_NUMBER \
--persistence-mode=PERSISTENCE_MODE

Esegui le seguenti sostituzioni:

  • CLUSTER_ID: l'ID del cluster che stai creando.
  • PROJECT_NAME: il nome del progetto in cui vuoi creare il cluster.
  • REGION_ID: l'ID della regione in cui vuoi che si trovi il cluster localizzato.
  • NETWORK_ID: l'ID della rete che vuoi utilizzare per creare il cluster.
  • KEY_RING: il nome della chiave automatizzata che contiene la chiave.
  • KEY_NAME: il nome della chiave.
  • SHARD_NUMBER: il numero di shard che vuoi avere per il cluster.
  • PERSISTENCE_MODE: la modalità di persistenza per il cluster. Puoi impostare questa modalità su uno dei seguenti valori:
    • aof: abiliti la persistenza basata su file di log solo di accodamento (AOF) per il cluster.
    • disabled: disattivi la persistenza per il cluster.
    • rdb: abiliti la persistenza basata su Redis Database (RDB) per il cluster.

Visualizzare le informazioni sulle chiavi per un cluster abilitato per CMEK

Puoi visualizzare le informazioni sul cluster abilitato per CMEK utilizzando gcloud CLI. Queste informazioni includono se CMEK è abilitato per il cluster e la chiave attiva.

gcloud

Per verificare se CMEK è abilitato e visualizzare il riferimento alla chiave, utilizza il gcloud redis clusters describe comando per visualizzare i campi encryptionInfo e kmsKey.

gcloud redis clusters describe CLUSTER_ID \
--project=PROJECT_NAME \
--region=REGION_ID

Esegui le seguenti sostituzioni:

  • CLUSTER_ID: l'ID del cluster di cui vuoi visualizzare le informazioni
  • PROJECT_NAME: il nome del progetto che contiene il cluster
  • REGION_ID: l'ID della regione in cui si trova il cluster

Gestire le versioni delle chiavi

Per informazioni su cosa succede quando disabiliti, elimini, ruoti, abiliti, e ripristini una versione della chiave, consulta Comportamento di una versione della chiave CMEK.

Per istruzioni su come disabilitare e riabilitare le versioni delle chiavi, consulta Abilitare e disabilitare le versioni delle chiavi.

Per istruzioni su come eliminare e ripristinare le versioni delle chiavi, consulta Eliminare e ripristinare le versioni delle chiavi.

Passaggi successivi