Questo documento mostra come eliminare definitivamente le risorse di Cloud Key Management Service. È possibile eliminare i seguenti tipi di risorse Cloud KMS:
- Chiavi automatizzate
- Chiavi
- Versioni delle chiavi
Questa operazione è irreversibile. Per le limitazioni specifiche delle risorse, consulta la sezione corrispondente di questo documento.
In Cloud KMS, la distruzione e l'eliminazione sono operazioni diverse:
Eliminazione: disattiva in modo permanente una versione della chiave, inclusa l'eliminazione irreversibile del materiale della chiave sottostante dopo il periodo di eliminazione specificato. Una versione della chiave nello stato
DESTROYEDnon può essere utilizzata per le operazioni di crittografia e non viene più fatturata. Puoi eliminare una versione della chiave utilizzata per criptare i dati per eseguire la distruzione crittografica dei dati che vuoi rendere definitivamente non recuperabili. Le versioni delle chiavi eliminate sono ancora incluse negli elenchi delle risorse Cloud KMS.Eliminazione: rimuove un keyring, una chiave o una versione della chiave dagli elenchi delle risorse Cloud KMS nella console Google Cloud , in Google Cloud CLI, nell'API Cloud Key Management Service e nelle librerie client. Per i progetti con molte chiavi automatizzate, chiavi o versioni delle chiavi non più attive, l'eliminazione semplifica le operazioni di ricerca e di elenco. Quando elimini un keyring, il suo nome diventa disponibile per il riutilizzo. Tuttavia, i nomi delle CryptoKey eliminate non possono essere riutilizzati. Puoi visualizzare un elenco di nomi di CryptoKey eliminati che non possono essere riutilizzati utilizzando il metodo
retiredResources.list.
Prima di iniziare
Per ottenere le autorizzazioni necessarie per eliminare e visualizzare le risorse Cloud KMS, chiedi all'amministratore di concederti il ruolo IAM Cloud KMS administrator (roles/cloudkms.admin) sulla chiave.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per eliminare e visualizzare le risorse Cloud KMS. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per eliminare e visualizzare le risorse Cloud KMS sono necessarie le seguenti autorizzazioni:
-
Per eliminare una versione della chiave:
cloudkms.cryptoKeyVersions.delete -
Per eliminare una chiave:
cloudkms.cryptoKeys.delete -
Per eliminare una chiave automatizzata:
cloudkms.keyRings.delete -
Per visualizzare le risorse eliminate:
-
cloudkms.retiredResources.get -
cloudkms.retiredResources.list
-
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Elimina una versione della chiave
Puoi eliminare una versione della chiave se si trova nello stato DESTROYED, IMPORT_FAILED o GENERATION_FAILED. Se la versione della chiave è stata importata, può essere eliminata solo se l'importazione non è riuscita.
Per eliminare definitivamente una versione della chiave, segui questi passaggi:
Console
Nella console Google Cloud , vai alla pagina Gestione chiavi.
Fai clic sul nome delle chiavi automatizzate contenenti la chiave e la versione della chiave che vuoi eliminare.
Fai clic sulla chiave che contiene la versione della chiave che vuoi eliminare.
Nella tabella Versioni, individua la versione della chiave che vuoi eliminare, quindi fai clic su Altre azioni.
Nel menu Altre azioni, fai clic su Elimina.
Nel prompt di conferma, inserisci il nome della chiave e fai clic su Elimina.
gcloud
Per eliminare una versione della chiave, esegui questo comando:
gcloud kms keys versions delete KEY_VERSION \
--location=LOCATION \
--keyring=KEY_RING \
--key=KEY_NAME
Sostituisci quanto segue:
KEY_VERSION: il numero della versione della chiave che vuoi eliminare definitivamente. La versione della chiave indicata deve essere nello statoDESTROYED,IMPORT_FAILEDoGENERATION_FAILED.LOCATION: la località Cloud KMS delle chiavi automatizzate.KEY_RING: il nome delle chiavi automatizzate che contengono la chiave.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi eliminare definitivamente.
Go
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
API
Per eliminare una versione della chiave, chiama il metodo
cryptoKeyVersions.delete. Questo metodo restituisce un'operazione a lunga esecuzione di cui puoi eseguire il polling per confermare che la versione della chiave è stata eliminata.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME/cryptoKeyVersions/KEY_VERSION" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.KEY_RING: il nome delle chiavi automatizzate che contengono la chiave.KEY_NAME: il nome della chiave che contiene la versione della chiave che vuoi eliminare definitivamente.KEY_VERSION: il numero della versione della chiave che vuoi eliminare definitivamente. La versione della chiave indicata deve essere nello statoDESTROYED,IMPORT_FAILEDoGENERATION_FAILED.
L'output del comando restituisce un
Operation. Per il passaggio successivo, devi avere l'namedell'operazione.Per verificare che la versione della chiave sia stata eliminata, puoi chiamare il metodo
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.OPERATION_NAME: il nome dell'operazione restituita dal metodo precedente.
Quando l'output di questo metodo mostra che
doneètrue, l'operazione è terminata. Se non viene indicatoerror, la versione della chiave è stata eliminata definitivamente.
Elimina una chiave
Puoi eliminare una chiave se soddisfa le seguenti condizioni:
- La chiave non contiene versioni della chiave che non sono ancora state eliminate.
- La chiave non ha una rotazione della chiave automatica pianificata.
- La chiave non è stata creata da Cloud KMS Autokey.
Per eliminare definitivamente una chiave:
Console
Nella console Google Cloud , vai alla pagina Gestione chiavi.
Fai clic sul nome delle chiavi automatizzate contenenti la chiave che vuoi eliminare.
Nella riga della chiave che vuoi eliminare, fai clic su Azioni chiave e poi su Elimina.
Nel prompt di conferma, inserisci il nome della chiave e fai clic su Elimina.
gcloud
Per eliminare una chiave, esegui questo comando:
gcloud kms keys delete KEY_NAME \
--location=LOCATION \
--keyring=KEY_RING
Sostituisci quanto segue:
KEY_NAME: il nome della chiave che vuoi eliminare definitivamente. La chiave non deve contenere versioni che non sono già state eliminate e non deve essere una chiave creata da Autokey.LOCATION: la località Cloud KMS delle chiavi automatizzate.KEY_RING: il nome delle chiavi automatizzate che contengono la chiave.
Go
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
API
Per eliminare una chiave, chiama il metodo
cryptoKey.delete. Questo metodo restituisce un'operazione a lunga esecuzione di cui puoi eseguire il polling per confermare che la chiave è stata eliminata.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.KEY_RING: il nome delle chiavi automatizzate che contengono la chiave.KEY_NAME: il nome della chiave che vuoi eliminare definitivamente. La chiave non deve contenere versioni che non sono già state eliminate e non deve essere una chiave creata da Autokey.
L'output del comando restituisce un
Operation. Per il passaggio successivo, devi avere l'namedell'operazione.Per confermare che la chiave è stata eliminata, puoi chiamare il metodo
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.OPERATION_NAME: il nome dell'operazione restituita dal metodo precedente.
Quando l'output di questo metodo mostra che
doneètrue, l'operazione è terminata. Se non viene indicatoerror, la chiave è stata eliminata definitivamente.
Elimina chiavi automatizzate
Puoi eliminare un keyring se soddisfa le seguenti condizioni:
- Tutte le chiavi automatizzate nel keyring devono essere eliminate.
- Tutti i job di importazione nelle chiavi automatizzate devono essere scaduti.
Quando elimini un keyring, il nome del keyring diventa disponibile per il riutilizzo entro circa 5-10 minuti.
Per eliminare definitivamente un keyring, segui questi passaggi:
Console
Nella console Google Cloud , vai alla pagina Gestione chiavi.
Nella riga della chiave automatizzata che vuoi eliminare, fai clic su Azioni chiave automatizzata e poi su Elimina.
Nel prompt di conferma, inserisci il nome della chiave automatizzata e fai clic su Elimina.
gcloud
Per eliminare un set di chiavi automatizzate, esegui questo comando:
gcloud kms keyrings delete KEY_RING \
--location=LOCATION \
Sostituisci quanto segue:
KEY_RING: il nome delle chiavi automatizzate che vuoi eliminare definitivamente. Il keyring non deve contenere chiavi o job di importazione nello statoACTIVE.LOCATION: la località Cloud KMS delle chiavi automatizzate.
API
Per eliminare un keyring, chiama il metodo
keyRings.delete. Questo metodo restituisce un'operazione a lunga esecuzione di cui puoi eseguire il polling per confermare che il keyring è stato eliminato.curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING" \ --request "DELETE" \ --header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.KEY_RING: il nome della chiave automatizzata che vuoi eliminare definitivamente. Le chiavi automatizzate non devono contenere chiavi o job di importazione nello statoACTIVE.
L'output del comando restituisce un
Operation. Per il passaggio successivo, devi avere l'namedell'operazione.Per confermare che il keyring è stato eliminato, puoi chiamare il metodo
operations.get:curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN"Sostituisci quanto segue:
PROJECT_ID: l'ID del progetto che contiene le chiavi automatizzate.LOCATION: la località Cloud KMS delle chiavi automatizzate.OPERATION_NAME: il nome dell'operazione restituita dal metodo precedente.
Quando l'output di questo metodo mostra che
doneètrue, l'operazione è terminata. Se non viene indicato alcunerror, il keyring è stato eliminato definitivamente.
Visualizza i nomi delle risorse ritirate
I nomi delle chiavi eliminate non possono essere riutilizzati nello stesso progettoGoogle Cloud . In questo modo, due chiavi diverse non possono avere lo stesso identificatore della risorsa. I nomi delle chiavi eliminate vengono archiviati negli oggetti retiredResources. Puoi eseguire query su retiredResources per visualizzare i nomi che non possono essere riutilizzati per le nuove risorse Cloud KMS.
Per visualizzare un elenco di tutte le risorse ritirate, segui questi passaggi:
gcloud
Esegui questo comando:
gcloud kms retired-resources list \
--location=LOCATION
Sostituisci quanto segue:
LOCATION: la località in cui vuoi visualizzare le risorse ritirate.
Go
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
API
Utilizza il metodo retiredResources.list:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto in cui vuoi visualizzare le risorse ritirate.LOCATION: la località in cui vuoi visualizzare le risorse ritirate.
Per visualizzare i metadati di una singola risorsa ritirata, segui questi passaggi:
gcloud
Esegui questo comando:
gcloud kms retired-resources describe RETIRED_RESOURCE \
--location=LOCATION
Sostituisci quanto segue:
RETIRED_RESOURCE: il nome della risorsa che vuoi visualizzare.LOCATION: la località in cui vuoi visualizzare una risorsa ritirata.
Go
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Java
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
Python
Per scoprire come installare e utilizzare la libreria client per Cloud KMS, consulta Librerie client di Cloud KMS.
Per eseguire l'autenticazione in Cloud KMS, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configura l'autenticazione per un ambiente di sviluppo locale.
API
Utilizza il metodo retiredResources.get:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/retiredResources/RETIRED_RESOURCE" \
--request "GET" \
--header "authorization: Bearer TOKEN"
Sostituisci quanto segue:
PROJECT_ID: l'identificatore del progetto in cui vuoi visualizzare una risorsa ritirata.LOCATION: la località in cui vuoi visualizzare una risorsa ritirata.RETIRED_RESOURCE: il nome della risorsa che vuoi visualizzare.
L'output del metodo include resourceType, deleteTime e l'identificatore completo della risorsa eliminata.
Passaggi successivi
- Scopri di più sull'eliminazione e sul ripristino delle versioni delle chiavi.