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 visualizzare i dettagli delle versioni,
chiedi all'amministratore di concederti
Ruolo IAM Visualizzatore Secret Manager (roles/secretmanager.viewer
) nel secret, nel progetto, nella cartella o nell'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 la ruoli o altri ruoli predefiniti ruoli.
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 riscontra problemi, puoi esamina le versioni precedenti di un secret per vedere se la causa è una modifica al secret.
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 località Google Cloud del secret
Esegui la persone che seguo :
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 località Google Cloud del secret
- PROJECT_ID: l'ID progetto Google Cloud
- SECRET_ID: l'ID del secret o dell'identificatore completo del 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
.
ed esegui questo comando:
$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 prima configurare un ambiente di sviluppo Go e installa l'SDK Secret Manager Go. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Java
Per eseguire questo codice, per prima cosa configura un ambiente di sviluppo Java e installa l'SDK Java di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Node.js
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione 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. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Ottieni i dettagli su una versione del secret
Questo processo consente di visualizzare i metadati di una versione del secret, come 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 del secret, 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 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 regionali.
-
Fai clic su un secret per accedere alle relative versioni.
Le versioni appartenenti allo 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 secret
- SECRET_ID: l'ID del secret o l'identificatore completo del secret.
- LOCATION: la località di Google Cloud 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, effettua le seguenti sostituzioni:
- LOCATION: la località di Google Cloud del segreto
- PROJECT_ID: l'ID del progetto Google Cloud
- SECRET_ID: l'ID del secret o dell'identificatore completo del secret
- VERSION_ID: l'ID della versione del secret
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
.
ed esegui questo comando:
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
.
ed esegui questo comando:
$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 prima configurare un ambiente di sviluppo Go e installa l'SDK Secret Manager Go. 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. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Node.js
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Node.js e installare l'SDK Node.js di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Python
Per eseguire questo codice, configura prima un ambiente di sviluppo Python e installare l'SDK per Python di Secret Manager. Su Compute Engine o GKE, devi autenticarti con l'ambito cloud-platform.