Questa pagina mostra come pianificare l'eliminazione definitiva di una versione della chiave Cloud Key Management Service. In Cloud KMS, il materiale della chiave di crittografia che utilizzi per criptare, decriptare, firmare e verificare i dati viene archiviato in una versione della chiave. Una chiave ha zero o più versioni. Quando ruoti una chiave, crei una nuova versione della chiave.
La distruzione di una versione della chiave comporta l'eliminazione definitiva del materiale della chiave. Quando distruggi una versione della chiave, gli altri dettagli, come il nome della chiave e il numero di versione della chiave, non vengono eliminati. Dopo l'eliminazione di una chiave, i dati criptati con la versione della chiave non possono essere decriptati.
L'unica eccezione è la reimportazione della chiave, che consente di ripristinare una chiave importata in precedenza fornendo lo stesso materiale della chiave originale.
Poiché la distruzione delle chiavi è generalmente irreversibile, Cloud KMS non consente di distruggere immediatamente le versioni delle chiavi. Puoi invece pianificare l'eliminazione di una versione della chiave. La versione della chiave rimane nello stato pianificata per l'eliminazione per un periodo di tempo configurabile. Durante il periodo di pianificazione per la distruzione, puoi ripristinare una versione della chiave per annullarne la distruzione.
La durata predefinita della pianificazione per la distruzione è di 30 giorni. Puoi impostare una durata personalizzata per la distruzione pianificata di una chiave durante la creazione della chiave. La tua organizzazione può applicare una durata minima della pianificazione per l'eliminazione impostando il vincolo Durata pianificata minima dell'eliminazione per chiave nelle policy dell'organizzazione.
Puoi anche gestire l'accesso alla chiave utilizzando Identity and Access Management (IAM). Le operazioni IAM sono coerenti entro pochi secondi. Per saperne di più, consulta Utilizzo di IAM.
Puoi anche disattivare temporaneamente una versione della chiave. Ti consigliamo di disattivare le versioni delle chiavi prima di pianificarne l'eliminazione nell'ambito delle procedure per garantire che la chiave possa essere eliminata in sicurezza. A seconda delle policy dell'organizzazione, potrebbe essere necessario disattivare una versione della chiave prima di poterla pianificare per la distruzione. Per saperne di più sul controllo della distruzione delle versioni delle chiavi utilizzando le policy dell'organizzazione, consulta Controlla la distruzione delle versioni delle chiavi.
Nel resto di questo documento, la pianificazione della distruzione di una chiave viene definita distruzione della chiave, anche se la distruzione non è immediata.
Prima di iniziare
Comprendi i rischi
La distruzione di una versione della chiave è un'operazione permanente. La distruzione di una versione della chiave ancora necessaria comporta rischi, tra cui:
Interruzione del servizio: se elimini una chiave necessaria per avviare un container o un'istanza, i tuoi servizi o le tue applicazioni potrebbero non essere disponibili.
Perdita permanente dei dati: se distruggi una chiave utilizzata per criptare i dati, questi non saranno più disponibili. I dati criptati con una chiave che è stata distrutta sono considerati crypto-shredded. In alcuni casi, la distruzione di una chiave può causare l'eliminazione definitiva delle risorse criptate.
Problemi normativi o di conformità: se distruggi una chiave necessaria per accedere ai dati soggetti a un periodo di conservazione prima che questo sia terminato, potresti violare un requisito normativo o di conformità.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per distruggere e ripristinare le versioni delle chiavi, chiedi all'amministratore di concederti il ruolo IAM Cloud KMS Admin (roles/cloudkms.admin) sulla chiave.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Controlla se la versione della chiave è in uso
Prima di eliminare una versione della chiave, completa i seguenti passaggi per verificare se la versione della chiave è in uso:
Visualizza i dettagli del monitoraggio dell'utilizzo delle chiavi per la chiave. Se alcune risorse sono protette dalla versione della chiave che vuoi distruggere, criptale nuovamente con un'altra versione della chiave.
Attiva i log per qualsiasi servizio o applicazione che potrebbe utilizzare la versione della chiave.
Attiva i log nel progetto Cloud KMS che contiene la chiave.
Disattiva la versione della chiave. La disattivazione della versione della chiave ne impedisce l'utilizzo. Con la versione della chiave disabilitata, qualsiasi tentativo di utilizzarla non va a buon fine.
Monitora i log finché non hai la certezza che nessuna applicazione o servizio si basi ancora sulla versione della chiave che hai disattivato. Se gli errori indicano un accesso non riuscito alla versione della chiave, configura l'applicazione o la risorsa in modo che utilizzi un'altra versione della chiave.
Il periodo di tempo che dedichi al monitoraggio dei log prima di eliminare una versione della chiave dipende dal tipo di chiave, dal suo modello di utilizzo e dal suo livello di sensibilità. Ad esempio, prima di eliminare una versione della chiave utilizzata in un processo eseguito ogni tre mesi, mantieni la versione della chiave disabilitata fino al completamento del processo.
Controlla l'utilizzo della chiave rispetto ai requisiti di conformità applicabili. Ad esempio, la versione della chiave e i dati criptati con questa potrebbero essere soggetti a periodi di conservazione dei dati.
Questi passaggi ti aiutano a identificare se una chiave potrebbe essere ancora necessaria, ma non possono garantire che una versione della chiave non sia più necessaria. La tua organizzazione deve implementare procedure e linee guida per garantire che la distruzione delle versioni delle chiavi non causi effetti negativi.
Distruzione della versione di una chiave
Puoi eliminare una versione della chiave abilitata o disabilitata.
Console
Nella console Google Cloud , vai alla pagina Gestione chiavi.
Seleziona la casella accanto alla versione della chiave per cui vuoi pianificare l'eliminazione.
Fai clic su Elimina nell'intestazione.
Nel prompt di conferma, inserisci il nome della chiave e fai clic su Pianifica eliminazione.
gcloud
Per utilizzare Cloud KMS dalla riga di comando, innanzitutto installa o esegui l'upgrade all'ultima versione di Google Cloud CLI.
gcloud kms keys versions destroy KEY_VERSION \
--key KEY_NAME \
--keyring KEY_RING \
--location LOCATION
Sostituisci quanto segue:
KEY_VERSION: il numero della versione della chiave che vuoi distruggere.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi distruggere.KEY_RING: il nome delle chiavi automatizzate che contiene la versione della chiave che vuoi eliminare.LOCATION: la località delle chiavi automatizzate che contengono la versione della chiave che vuoi distruggere.
Per informazioni su tutti i flag e i valori possibili, esegui il comando con il flag --help.
C#
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo C# e installa l'SDK Cloud KMS C#.
Go
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Go e installa l'SDK Cloud KMS Go.
Java
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Java e installa l'SDK Java di Cloud KMS.
Node.js
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Cloud KMS.
PHP
Per eseguire questo codice, scopri innanzitutto come utilizzare PHP su Google Cloud e installa l'SDK PHP di Cloud KMS.
Python
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Python e installa l'SDK Python di Cloud KMS.
Ruby
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Ruby e installa l'SDK Cloud KMS per Ruby.
API
Questi esempi utilizzano curl come client HTTP per dimostrare l'utilizzo dell'API. Per saperne di più sul controllo dell'accesso, consulta Accesso all'API Cloud KMS.
Elimina una versione della chiave chiamando il metodo CryptoKeyVersions.destroy.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION:destroy" \
--request "POST" \
--header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto che contiene la versione della chiave che vuoi distruggere.LOCATION: la località delle chiavi automatizzate che contengono la versione della chiave che vuoi distruggere.KEY_RING: il nome delle chiavi automatizzate che contiene la versione della chiave che vuoi eliminare.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi distruggere.KEY_VERSION: il numero della versione della chiave che vuoi distruggere.
Se non riesci a eliminare una versione della chiave, la tua organizzazione potrebbe richiedere che le versioni delle chiavi vengano disattivate prima dell'eliminazione. Prova a disabilitare la versione della chiave prima di eliminarla.
Quando invii la richiesta di eliminazione, lo stato della versione della chiave diventa Pianificata per l'eliminazione. Una volta trascorso il periodo di tempo configurato per la pianificazione dell'eliminazione della chiave, lo stato della versione della chiave diventa "Eliminata", il che significa che è iniziata l'eliminazione logica del materiale della chiave dai sistemi attivi e il materiale della chiave non può essere recuperato dal cliente. Il materiale delle chiavi può rimanere nei sistemi Google per un massimo di 45 giorni dalla data di distruzione pianificata.
Per ricevere un avviso quando è pianificata l'eliminazione di una versione della chiave, consulta Utilizzo di Cloud Monitoring con Cloud KMS.
Le versioni delle chiavi eliminate non sono risorse fatturate.
Distruzione delle chiavi esterne
Per rimuovere definitivamente l'associazione tra una chiave Cloud EKM e una chiave esterna, puoi eliminare la versione della chiave. Una volta trascorso il periodo Pianificata per l'eliminazione, la chiave viene eliminata. Dopo l'eliminazione della versione della chiave, non puoi più criptare i dati o decriptare i dati criptati con la versione della chiave Cloud EKM.
La distruzione di una versione della chiave gestita manualmente in Cloud KMS non modifica la chiave nel gestore di chiavi esterno. Ti consigliamo di distruggere prima la chiave o la versione della chiave in Google Cloud. Dopo l'eliminazione della versione della chiave Cloud EKM, puoi eliminare il materiale della chiave nel gestore di chiavi esterno.
La distruzione di una versione della chiave esterna coordinata in Cloud KMS distrugge prima la versione della chiave in Google Cloud, quindi invia una richiesta di distruzione all'EKM per distruggere il materiale della chiave esterna.
Ripristina una versione della chiave
Durante il periodo in cui lo stato di una versione della chiave è pianificato per l'eliminazione, puoi ripristinare la versione della chiave inviando una richiesta di ripristino.
Console
Nella console Google Cloud , vai alla pagina Gestione chiavi.
Fai clic sul nome delle chiavi automatizzate contenenti la versione della chiave che vuoi ripristinare.
Fai clic sulla chiave che contiene la versione della chiave che vuoi ripristinare.
Seleziona la casella accanto alla versione della chiave che vuoi ripristinare.
Fai clic su Ripristina nell'intestazione.
Nel prompt di conferma, fai clic su Ripristina.
gcloud
Per utilizzare Cloud KMS dalla riga di comando, innanzitutto installa o esegui l'upgrade all'ultima versione di Google Cloud CLI.
gcloud kms keys versions restore KEY_VERSION \
--key KEY_NAME \
--keyring KEY_RING \
--location LOCATION
Sostituisci quanto segue:
KEY_VERSION: il numero della versione della chiave che vuoi ripristinare.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi ripristinare.KEY_RING: il nome della chiave automatizzata che contiene la versione della chiave che vuoi ripristinare.LOCATION: la località delle chiavi automatizzate che contengono la versione della chiave che vuoi ripristinare.
Per informazioni su tutti i flag e i valori possibili, esegui il comando con il flag --help.
C#
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo C# e installa l'SDK Cloud KMS C#.
Go
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Go e installa l'SDK Cloud KMS Go.
Java
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Java e installa l'SDK Java di Cloud KMS.
Node.js
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Cloud KMS.
PHP
Per eseguire questo codice, scopri innanzitutto come utilizzare PHP su Google Cloud e installa l'SDK PHP di Cloud KMS.
Python
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Python e installa l'SDK Python di Cloud KMS.
Ruby
Per eseguire questo codice, innanzitutto configura un ambiente di sviluppo Ruby e installa l'SDK Cloud KMS per Ruby.
API
Questi esempi utilizzano curl come client HTTP per dimostrare l'utilizzo dell'API. Per saperne di più sul controllo dell'accesso, consulta Accesso all'API Cloud KMS.
Ripristina una versione della chiave chiamando il metodo CryptoKeyVersions.restore.
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION:restore" \
--request "POST" \
--header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto che contiene la versione della chiave che vuoi ripristinare.LOCATION: la località delle chiavi automatizzate che contengono la versione della chiave che vuoi ripristinare.KEY_RING: il nome delle chiavi automatizzate che contiene la versione della chiave che vuoi ripristinare.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi ripristinare.KEY_VERSION: il numero della versione della chiave che vuoi ripristinare.
Al termine della richiesta di ripristino, lo stato della versione della chiave diventa disabilitato. Devi abilitare la chiave prima di poterla utilizzare.
Autorizzazioni IAM obbligatorie
Per distruggere una versione della chiave, il chiamante deve disporre dell'autorizzazione IAM cloudkms.cryptoKeyVersions.destroy per la chiave, l'anello di chiavi o il progetto, la cartella o l'organizzazione.
Per ripristinare una versione della chiave, il chiamante deve disporre dell'autorizzazione cloudkms.cryptoKeyVersions.restore.
Entrambe queste autorizzazioni vengono concesse al ruolo Cloud KMS Admin (roles/cloudkms.admin).
Tempistiche di eliminazione
Cloud KMS si impegna a eliminare il materiale delle chiavi dei clienti da tutta l'infrastruttura Google entro 45 giorni dall'ora di distruzione pianificata. Ciò include la rimozione dei dati sia dai sistemi attivi sia dai backup dei data center. Altri dati dei clienti sono soggetti alla Google Cloud cronologia di eliminazione standard di 180 giorni.