Questo argomento descrive come accedere a una versione del secret. L'accesso a una versione del secret restituisce i contenuti del secret e metadati aggiuntivi sulla versione del secret. Quando accedi a una versione del secret, specifichi il valore version-id
o alias, se assegnato. Puoi anche accedere alla versione più recente di un
secret specificando "latest"
come versione.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per accedere a una versione del secret,
chiedi all'amministratore di concederti il ruolo IAM
Accessore ai secret di Secret Manager (roles/secretmanager.secretAccessor
) su un secret.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.
Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Accedi a una versione del secret
Console
-
Vai alla pagina Secret Manager nella console Google Cloud.
-
Nella pagina Secret Manager, fai clic sul nome di un secret.
-
Nella tabella Versioni della pagina Dettagli secret, individua una versione del secret a cui accedere.
-
Nella colonna Azioni, fai clic su Mostra altro
. -
Fai clic su Visualizza valore del secret nel menu.
-
Viene visualizzata una finestra di dialogo che mostra il valore della versione del secret. Fai clic su Fine per terminare.
gcloud
Per utilizzare Secret Manager nella riga di comando, devi prima installare Google Cloud CLI o eseguirne l'upgrade alla versione 378.0.0 o successiva. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Accedi a una versione del secret:
$ gcloud secrets versions access version-id --secret="secret-id"
Accesso a una versione di secret binari:
Per scrivere byte non elaborati in un file, utilizza il flag --out-file:
$ gcloud secrets versions access version-id --secret="secret-id" --out-file="path/to/secret"
Per ottenere i byte non elaborati, chiedi a Cloud SDK di stampare la risposta con la codifica Base64 e decodifica:
$ gcloud secrets versions access version-id --secret="secret-id" --format='get(payload.data)' | tr '_-' '/+' | base64 -d
C#
Per eseguire questo codice, prima configura un ambiente di sviluppo C# e installa l'SDK C# di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Go
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Go e installare l'SDK Secret Manager Go. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Java
Per eseguire questo codice, devi prima 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, prima configura un ambiente di sviluppo Node.js e installa l'SDK Node.js di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
PHP
Per eseguire questo codice, scopri prima di tutto come utilizzare PHP su Google Cloud e installare l'SDK PHP di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Python
Per eseguire questo codice, prima configura un ambiente di sviluppo Python e installa l'SDK Python di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
Ruby
Per eseguire questo codice, devi prima configurare un ambiente di sviluppo Ruby e poi installare l'SDK Ruby di Secret Manager. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
API
In questi esempi viene utilizzato curl per dimostrare l'utilizzo dell'API. Puoi generare token di accesso con gcloud auth print-access-token. In Compute Engine o GKE, devi eseguire l'autenticazione con l'ambito cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id:access" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
La risposta payload.data
indica i contenuti codificati in base64 della versione del secret. Ecco un esempio di estrazione del secret mediante lo strumento jq
:
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id:access" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
| jq -r ".payload.data" | base64 --decode
Coerenza delle risorse
In Secret Manager, l'aggiunta di una versione del secret e l'accesso immediato a quella versione del secret tramite il numero di versione è un'operazione a elevata coerenza.
Altre operazioni all'interno di Secret Manager sono alla fine coerenti. Le operazioni a coerenza finale in genere convergono in pochi minuti, ma potrebbero richiedere alcune ore.
La propagazione delle autorizzazioni IAM è coerente. Ciò significa che l'autorizzazione o la revoca dell'accesso ai secret potrebbe non avere effetto immediato. Per ulteriori informazioni, consulta Propagazione delle modifiche di accesso.
Passaggi successivi
- Scopri come assegnare un alias a una versione del secret.
- Scopri come disabilitare una versione del secret.
- Scopri come eliminare una versione del secret.