Cette page explique comment récupérer la liste de toutes les versions d'un secret qui ont été créées au fil du temps et comment afficher les métadonnées d'une version spécifique d'un secret.
Rôles requis
Pour obtenir les autorisations nécessaires pour lister les versions d'un secret et afficher les détails d'une version, demandez à votre administrateur de vous accorder le rôle IAM Lecteur Secret Manager (roles/secretmanager.viewer
) sur le secret, le projet, le dossier ou l'organisation.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Lister les versions d'un secret
Répertorier les versions d'un secret est utile pour les raisons suivantes :
-
Vous pouvez voir comment un secret a évolué au fil du temps, qui l'a modifié et quand. Cette étape est obligatoire pour l'audit et la conformité.
-
Vous pouvez revenir à une version antérieure connue si un secret est mis à jour ou compromis par erreur.
-
Vous pouvez identifier les versions qui ne sont plus utilisées et qui peuvent être supprimées sans risque.
-
Vous pouvez résoudre les problèmes. Par exemple, si une application rencontre des problèmes, vous pouvez examiner les versions précédentes d'un secret pour voir si un changement apporté au secret en est la cause.
Pour lister toutes les versions d'un secret, utilisez l'une des méthodes suivantes :
Console
-
Dans la console Google Cloud , accédez à la page Secret Manager.
-
Cliquez sur un secret pour accéder à ses versions.
Les versions appartenant au secret sont affichées dans le tableau Versions.
gcloud
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- SECRET_ID : ID du secret ou identifiant complet du secret.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud secrets versions list SECRET_ID
Windows (PowerShell)
gcloud secrets versions list SECRET_ID
Windows (cmd.exe)
gcloud secrets versions list SECRET_ID
La réponse contient le secret.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID du projet Google Cloud
- SECRET_ID : ID du secret ou identifiant complet du secret
Méthode HTTP et URL :
GET https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions
Corps JSON de la requête :
{}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "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 }
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installez le SDK Secret Manager pour C#. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Secret Manager pour Node.js. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Obtenir des informations détaillées sur une version de secret
Ce processus vous permet d'afficher les métadonnées d'une version de secret, telles que l'ID de version, la date et l'heure de création, les informations de chiffrement et l'état. Afficher les métadonnées d'une version de secret signifie accéder aux informations sur la version du secret, mais pas à la valeur réelle du secret lui-même. Pour afficher la valeur du secret, consultez Accéder à une version de secret.
Pour afficher les métadonnées d'une version secrète, utilisez l'une des méthodes suivantes :
Console
-
Dans la console Google Cloud , accédez à la page Secret Manager.
-
Cliquez sur un secret pour accéder à ses versions.
Les versions appartenant au secret sont affichées dans le tableau Versions. Pour chaque version, l'ID de version et ses métadonnées sont également affichés dans le tableau.
gcloud
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
- VERSION_ID : ID de la version du secret
- SECRET_ID : ID du secret ou identifiant complet du secret.
Exécutez la commande suivante :
Linux, macOS ou Cloud Shell
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
Windows (PowerShell)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
Windows (cmd.exe)
gcloud secrets versions describe VERSION_ID --secret=SECRET_ID
La réponse contient le secret.
REST
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID : ID du projet Google Cloud
- SECRET_ID : ID du secret ou identifiant complet du secret
- VERSION_ID : ID de la version du secret
Méthode HTTP et URL :
GET https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID
Corps JSON de la requête :
{}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://secretmanager.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID"
PowerShell
Enregistrez le corps de la requête dans un fichier nommé request.json
, puis exécutez la commande suivante :
$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.googleapis.com/v1/projects/PROJECT_ID/secrets/SECRET_ID/versions/VERSION_ID" | Select-Object -Expand Content
Vous devriez recevoir une réponse JSON de ce type :
{ "name": "projects/PROJECT_ID/locations/LOCATION/secrets/SECRET_ID/versions/VERSION_ID", "createTime": "2024-09-04T06:41:57.859674Z", "state": "ENABLED", "etag": "\"1621457b3c1459\"" }
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installez le SDK Secret Manager pour C#. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js, puis installez le SDK Secret Manager pour Node.js. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
Étapes suivantes
- Découvrez comment attribuer un alias à une version de secret.