Questa pagina descrive come recuperare un elenco di tutte le diverse versioni di un segreto create nel tempo e visualizzare i metadati di una versione specifica del segreto.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per elencare le versioni dei secret e visualizzarne i dettagli,
chiedi all'amministratore di concederti il ruolo IAM Visualizzatore Secret Manager (roles/secretmanager.viewer
) per il secret, il progetto, la cartella o l'organizzazione.
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.
Elenca le versioni di un secret
L'elenco delle versioni di un secret è utile nei seguenti modi:
-
Puoi vedere come è cambiato un segreto nel tempo, chi ha apportato le modifiche e quando. Questo è necessario per i controlli e la conformità.
-
Puoi eseguire il rollback a una versione precedente nota come valida se un segreto viene aggiornato o compromesso per errore.
-
Puoi identificare le versioni non più in uso che possono essere eliminate in sicurezza.
-
Puoi risolvere i problemi. Ad esempio, se un'applicazione presenta problemi, puoi esaminare le versioni precedenti di un segreto per capire se la causa è una modifica al segreto.
Per elencare tutte le versioni di un 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 regionali.
-
Fai clic su un secret per accedere alle relative versioni.
Le versioni appartenenti al secret vengono visualizzate nella tabella Versioni.
gcloud
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
- SECRET_ID: l'ID del secret o l'identificatore completo del secret.
- LOCATION: la Google Cloud posizione del segreto
Esegui il seguente comando:
Linux, macOS o Cloud Shell
gcloud secrets versions list SECRET_ID --location=LOCATION
Windows (PowerShell)
gcloud secrets versions list SECRET_ID --location=LOCATION
Windows (cmd.exe)
gcloud secrets versions list SECRET_ID --location=LOCATION
La risposta contiene il secret.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: la Google Cloud posizione del segreto
- PROJECT_ID: l' Google Cloud ID progetto
- SECRET_ID: l'ID della secret o l'identificatore completo della secret
Metodo HTTP e URL:
GET https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions
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 GET \
-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"
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 GET `
-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" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "versions": [ { "name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID", "createTime": "2024-09-04T06:41:57.859674Z", "state": "ENABLED", "etag": "\"1621457b3c1459\"" } ], "totalSize": 1 }
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.
Visualizzare i dettagli di una versione del secret
Questa procedura ti consente di visualizzare i metadati di una versione del secret, ad esempio l'ID versione, la data e l'ora di creazione, i dettagli della crittografia e lo stato. La visualizzazione dei metadati di una versione del secret consente di accedere alle informazioni sulla versione, ma non al valore effettivo del secret. Per visualizzare il valore del secret, consulta Accedere a una versione del secret regionale.
Per visualizzare i metadati di una versione segreta, utilizza uno dei seguenti metodi:
Console
-
Vai alla pagina Secret Manager nella console Google Cloud.
-
Nella pagina Secret Manager, fai clic sulla scheda Secret regionali.
-
Fai clic su un secret per accedere alle relative versioni.
Le versioni appartenenti al secret vengono visualizzate nella tabella Versioni. Per ogni versione, nella tabella vengono visualizzati anche l'ID versione e i relativi metadati.
gcloud
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
- VERSION_ID: l'ID della versione del segreto
- SECRET_ID: l'ID del secret o l'identificatore completo del secret.
- LOCATION: la Google Cloud posizione del segreto
Esegui il seguente comando:
Linux, macOS o Cloud Shell
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID --location=LOCATION
Windows (PowerShell)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID --location=LOCATION
Windows (cmd.exe)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID --location=LOCATION
La risposta contiene il secret.
REST
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- LOCATION: la Google Cloud posizione del segreto
- PROJECT_ID: l' Google Cloud ID progetto
- SECRET_ID: l'ID della secret o l'identificatore completo della secret
- VERSION_ID: l'ID della versione del segreto
Metodo HTTP e URL:
GET https://secretmanager.LOCATION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID
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 GET \
-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"
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 GET `
-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" | 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-04T06:41:57.859674Z", "state": "ENABLED", "etag": "\"1621457b3c1459\"" }
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.