Questa pagina descrive come eliminare una versione del secret. Nello stato di eliminazione, i contenuti della versione del secret vengono eliminati. L'eliminazione di una versione del secret è un'azione permanente. Una volta eliminata una versione, non potrai accedere ai dati del secret o ripristinare la versione in un altro stato.
Prima di distruggere una versione del secret, prova a disattivarla e osserva il comportamento dell'applicazione. Puoi riattivare la versione del secret se riscontri problemi imprevisti.
Quando disattivi o elimini un secret o una versione del secret, la modifica richiede del tempo per propagarsi nel sistema. Se necessario, puoi revocare l'accesso al secret. Le modifiche alle autorizzazioni IAM sono coerenti entro pochi secondi.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per eliminare una versione di un secret,
chiedi all'amministratore di concederti il ruolo IAM Gestione delle versioni dei secret di Secret Manager (roles/secretmanager.secretVersionManager
) per un secret.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Elimina una versione del secret
Per eliminare una versione del secret, utilizza uno dei seguenti metodi:
Console
-
Vai alla pagina Secret Manager nella console Google Cloud.
-
Nella pagina Secret Manager, fai clic sulla scheda Secret a livello di regione e poi su un secret per accedere alle relative versioni.
-
Nella pagina dei dettagli del secret, seleziona la versione del secret che vuoi distruggere nella scheda Versioni.
-
Fai clic su
Azioni e poi su Elimina. -
Nella finestra di dialogo di conferma visualizzata, inserisci l'ID secret da confermare e poi fai clic su Distruggi le versioni selezionate.
gcloud
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
- VERSION_ID: il nome della risorsa della versione del secret
- SECRET_ID: l'ID del segreto o l'identificatore completo del segreto
- LOCATION: la località di Google Cloud del segreto
Esegui il seguente comando:
Linux, macOS o Cloud Shell
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID --location=LOCATION
Windows (PowerShell)
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID --location=LOCATION
Windows (cmd.exe)
gcloud secrets versions destroy VERSION_ID --secret=SECRET_ID --location=LOCATION
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: la località di Google Cloud del segreto
- PROJECT_ID: l'ID progetto Google Cloud
- SECRET_ID: l'ID del segreto o l'identificatore completo del segreto
- VERSION_ID: l'ID della versione del secret
Metodo HTTP e URL:
POST https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID:destroy
Corpo JSON della richiesta:
{}
Per inviare la richiesta, scegli una delle seguenti opzioni:
curl
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID:destroy"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID:destroy" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID", "createTime": "2024-09-02T07:16:34.566706Z", "destroyTime": "2024-09-04T06:29:01.893743728Z", "state": "DESTROYED", "etag": "\"1621454a37ce7f\"" }
Go
Per eseguire questo codice, devi innanzitutto configurare un ambiente di sviluppo Go e installare l'SDK Go di Secret Manager. Su Compute Engine o GKE, devi autenticarti con l'ambito cloud-platform.
Java
Per eseguire questo codice, devi innanzitutto configurare un ambiente di sviluppo Java e installare l'SDK Java di Secret Manager. Su Compute Engine o GKE, devi autenticarti con l'ambito cloud-platform.
Node.js
Per eseguire questo codice, devi innanzitutto configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Secret Manager. Su Compute Engine o GKE, devi autenticarti con l'ambito cloud-platform.
Python
Per eseguire questo codice, devi innanzitutto configurare un ambiente di sviluppo Python e installare l'SDK Python di Secret Manager. Su Compute Engine o GKE, devi autenticarti con l'ambito cloud-platform.
Eliminazione ritardata delle versioni del secret
Gli utenti con il ruolo Amministratore di Secret Manager possono configurare la distruzione ritardata delle versioni del secret configurando la funzionalità Ritarda eliminazione versione secret sul secret. Se questa funzionalità è attivata, la versione del secret non viene eliminata immediatamente su richiesta. La versione del secret viene invece disattivata e pianificata per l'eliminazione in una data successiva. Durante questo periodo, l'amministratore di Secret Manager può ripristinare la versione del segreto.
Passaggi successivi
- Ritarda l'eliminazione delle versioni dei secret regionali
- Assegnare un alias a una versione del secret regionale