Questa pagina descrive come creare, configurare e applicare le chiavi di crittografia gestite dal cliente (CMEK) per AlloyDB per PostgreSQL.
Per scoprire di più su CMEK, consulta Informazioni su CMEK.
Creare e autorizzare una chiave CMEK per AlloyDB
Crea una chiave in Cloud Key Management Service (Cloud KMS). AlloyDB supporta i seguenti tipi di chiavi:
La chiave deve trovarsi nella stessa posizione del cluster AlloyDB. Ad esempio, un cluster AlloyDB in
us-west1
può utilizzare solo le chiavi inus-west1
.Se hai già una chiave Cloud KMS nella posizione corretta, puoi saltare questo passaggio.
Concedi ad AlloyDB l'accesso alla chiave.
Utilizza Google Cloud CLI per creare e visualizzare l'agente di servizio o visualizzarlo se l'account esiste già:
gcloud beta services identity create --service=alloydb.googleapis.com \ --project=PROJECT
Il comando gcloud services identity crea o recupera l'agente di servizio che AlloyDB può utilizzare per accedere alla chiave Cloud KMS per conto tuo.
L'ID account di servizio assomiglia a un indirizzo email:
Service identity created: service-xxx@gcp-sa-alloydb.iam.gserviceaccount.com
Concedi il ruolo
cloudkms.cryptoKeyEncrypterDecrypter
all'account di servizio:gcloud kms keys add-iam-policy-binding KEY \ --location REGION \ --keyring KEYRING \ --project=PROJECT \ --member serviceAccount:service-xxx@gcp-sa-alloydb.iam.gserviceaccount.com \ --role roles/cloudkms.cryptoKeyEncrypterDecrypter
Sostituisci quanto segue:
- KEY: l'ID Cloud KMS della chiave
- REGION: la regione della chiave, ad esempio
us-central1
- PROJECT: l'ID del progetto della chiave
- KEYRING: l'ID del mazzo di chiavi Cloud KMS della chiave
Questo ruolo garantisce che l'account di servizio disponga dell'autorizzazione per criptare e decriptare con la chiave Cloud KMS. Per ulteriori informazioni, consulta Autorizzazioni e ruoli Cloud KMS.
Creare un cluster con crittografia CMEK
Quando crei un nuovo cluster, puoi scegliere se criptarlo con la crittografia gestita da Google predefinita o utilizzare una chiave CMEK. Per maggiori informazioni, consulta Creare un cluster e la relativa istanza principale.
Visualizzare il metodo di crittografia e la chiave CMEK di un cluster
Console
La colonna Crittografia della pagina Cluster indica se ogni cluster del progetto utilizza la crittografia gestita da Google o CMEK.
Per visualizzare i dettagli chiave di un cluster che utilizza CMEK, fai clic sul nome nella colonna Nome risorsa. Il campo Chiave di crittografia della pagina dei dettagli successiva contiene una descrizione della chiave, incluso un link alla relativa pagina dei dettagli di Cloud KMS.
gcloud
Chiama il comando gcloud alloydb clusters describe
:
gcloud alloydb clusters describe CLUSTER \
--project=PROJECT \
--region=REGION
Sostituisci quanto segue:
- CLUSTER: l'ID del cluster da descrivere
- PROJECT: l'ID del progetto del cluster
- REGION: la regione del cluster, ad esempio
us-central1
L'output include un campo encryptionInfo
con un riepilogo della crittografia del cluster.
Applicare CMEK ai backup
Quando crei un nuovo backup, puoi scegliere se criptarlo con la crittografia gestita da Google predefinita o utilizzare una chiave CMEK. Per maggiori informazioni, consulta Creare un backup on demand o Pianificare i backup automatici.
Hai anche la possibilità di applicare una chiave CMEK al cluster creato durante il ripristino da un backup, indipendentemente dal metodo di crittografia del backup. Per saperne di più, vedi Ripristinare un cluster.
Visualizzare il metodo di crittografia e la chiave CMEK di un backup
Console
La colonna Crittografia della pagina Backup indica se ogni cluster del progetto utilizza la crittografia gestita da Google o le chiavi CMEK.
Per visualizzare i dettagli chiave di un backup che utilizza CMEK, fai clic su Ripristina. Il campo Chiave di crittografia del riquadro dei dettagli successivo contiene una descrizione della chiave, incluso un link alla relativa pagina dei dettagli di Cloud KMS.
gcloud
Chiama il comando gcloud alloydb backups describe
:
gcloud alloydb backups describe CLUSTER \
--project=PROJECT \
--region=REGION
Sostituisci quanto segue:
- CLUSTER: l'ID del backup da descrivere
- PROJECT: l'ID del progetto del backup
- REGION: la regione del backup, ad esempio
us-central1
L'output include un campo encryptionInfo
con un riepilogo della crittografia del backup.
Disattivare una chiave
La disattivazione della chiave CMEK di un cluster rende inaccessibili i dati del cluster fino a quando non riattivi la chiave.
Tuttavia, la disattivazione di una chiave può richiedere fino a tre ore per propagarsi al tuo cluster AlloyDB. Per disattivare una chiave impedendo al contempo l'accesso ai tuoi dati immediatamente, segui questi passaggi:
Elimina l'istanza principale del cluster. Ciò non influisce sui dati del tuo cluster. Puoi creare una nuova istanza principale dopo aver riattivato la chiave, come descritto nella sezione seguente.
Attivare una chiave
Per attivare una chiave:
Se hai eliminato l'istanza principale del cluster prima di disattivare la chiave, crea una nuova istanza principale.
L'attivazione di una chiave può richiedere fino a tre ore per essere propagata al cluster. I dati del cluster diventano accessibili non appena avviene questa propagazione.
Visualizzare gli audit log di una chiave Cloud KMS
Per visualizzare i log di controllo associati a una determinata chiave CMEK, segui questi passaggi:
Assicurati che il logging sia abilitato per l'API Cloud KMS nel tuo progetto.
Vai a Esplora log nella console Google Cloud.
Limita le voci di log alla tua chiave Cloud KMS aggiungendo le seguenti linee al query builder:
resource.type="cloudkms_cryptokey" resource.labels.location="REGION" resource.labels.key_ring_id="KEYRING" resource.labels.crypto_key_id="KEY"
Sostituisci quanto segue:
- REGION: la regione della chiave, ad esempio
us-central1
- KEYRING: l'ID del mazzo di chiavi Cloud KMS della chiave
- KEY: l'ID Cloud KMS della chiave
- REGION: la regione della chiave, ad esempio
In condizioni normali, le operazioni di crittografia e decrittografia vengono registrate con gravità
INFO
. Queste voci vengono registrate quando le istanze nel tuo cluster AlloyDB convalidano la chiave {kms_name_short}}, che si verifica circa ogni cinque minuti.Se AlloyDB non riesce ad accedere alla chiave, le operazioni vengono registrate come
ERROR
.
Visualizzare le giustificazioni per l'accesso a una chiave Cloud EKM
Se utilizzi una chiave Cloud EKM, puoi utilizzare Key Access Justifications per visualizzare il motivo di ogni richiesta Cloud EKM. Inoltre, in base alla motivazione fornita, puoi approvare o rifiutare automaticamente una richiesta. Per ulteriori informazioni, consulta Visualizzare e applicare le giustificazioni.