Utilizzo delle chiavi di crittografia gestite dal cliente (CMEK)

Utilizzando le chiavi di crittografia gestite dal cliente (CMEK), hai il controllo sulle tue chiavi. In questo modo, puoi 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 disporre del ruolo di amministratore Redis nel tuo account utente.

    Vai alla pagina IAM

Flusso di lavoro per creare un cluster che utilizza CMEK

  1. Crea un portachiavi e una chiave nella posizione in cui vuoi che si trovi il cluster in Memorystore for Redis Cluster.

  2. Copia o annota il nome della chiave (KEY_NAME), la posizione della chiave e il nome del portachiavi (KEY_RING). Ti serviranno queste informazioni quando concederai l'accesso alla chiave al account di servizio.

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

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

Ora il cluster è abilitato con CMEK.

Crea una chiave automatizzata e una chiave

Crea una chiave automatizzata e una chiave. Entrambi 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 il portachiavi e la chiave, copia o annota KEY_NAME, la posizione della chiave e KEY_RING. Ti serviranno queste informazioni quando concedi l'accesso alla chiave alaccount di serviziot.

Concedi all'account di servizio 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 Memorystore for Redis Cluster specifico l'accesso alla chiave.

Puoi concedere al account di servizio l'accesso alla chiave utilizzando 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 comando gcloud kms keys add-iam-policy-binding.

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

Effettua le seguenti sostituzioni:

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

Crea 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 comando gcloud redis clusters create.

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

Effettua 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.
  • NETWORK_ID: l'ID della rete che vuoi utilizzare per creare il cluster.
  • KEY_RING: il nome delle chiavi automatizzate che contengono 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 tipo Append-Only File (AOF) per il cluster.
    • disabled: disattivi la persistenza per il cluster.
    • rdb: abilita la persistenza basata su Redis Database (RDB) per il cluster.

Visualizza le informazioni chiave per un cluster abilitato per CMEK

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

gcloud

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

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

Effettua le seguenti sostituzioni:

  • CLUSTER_ID: l'ID del cluster su 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 della chiave

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

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

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

Passaggi successivi