Une version de secret contient les données réelles du secret, ainsi que son état et ses métadonnées. Cette rubrique explique comment gérer les versions d'un secret.
Avant de commencer
Configurez Secret Manager et votre environnement local une fois pour chaque projet.
États des versions des secrets
Une version de secret peut se trouver dans l'un des états suivants à tout moment :
Activé : dans cet état, la version du secret est accessible et descriptible. Il s'agit de l'état par défaut d'une nouvelle version de secret.
Désactivé : dans cet état, la version du secret n'est pas accessible, mais le contenu du secret existe toujours. Vous pouvez réactiver la version du secret afin de restaurer l'accès.
Détruit : dans cet état, le contenu de la version du secret est supprimé. L'état de la version du secret ne peut être modifié.
Obtenir des informations détaillées sur une version de secret
Ces exemples illustrent comment obtenir des informations détaillées sur une version de secret, à l'exception de ses données sensibles, en consultant ses métadonnées.
Pour afficher les métadonnées de la version d'un secret, vous devez disposer du rôle "Lecteur de secrets" (roles/secretmanager.viewer
) sur le secret, le projet, le dossier ou l'organisation.
Les rôles IAM ne peuvent être attribués au niveau de la version d'un secret.
Console
-
Accédez à la page Secret Manager dans la console Google Cloud.
-
Sur la page Secret Manager, cliquez sur le nom d'un secret.
-
Sur la page Informations détaillées sur le secret de la table Versions, repérez la version du secret à obtenir.
-
Recherchez l'ID de la version dans la table et lisez ses métadonnées.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets versions describe version-id --secret="secret-id"
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Répertorier les versions d'un secret
La création de la liste des versions d'un secret renvoie toutes les versions qui y sont associées, ainsi que l'état de chacune d'elles, qu'il soit activé, désactivé ou détruit.
Pour répertorier les versions d'un secret, vous devez disposer du rôle "Lecteur de secrets" (roles/secretmanager.viewer
) sur le secret, le projet, le dossier ou l'organisation.
Les rôles IAM ne peuvent être attribués au niveau de la version d'un secret.
Console
-
Accédez à la page Secret Manager dans la console Google Cloud.
-
Sur la page Secret Manager, cliquez sur le nom d'un secret.
-
La page Informations détaillées sur le secret affiche la liste des versions dans le tableau Versions.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets versions list secret-id
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions" \
--request "GET" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Désactiver la version d'un secret
Lorsque vous détruisez la version d'un secret, celle-ci devient accessible. La désactivation d'un secret est irréversible.
Pour désactiver la version d'un secret, vous devez disposer du rôle "Administrateur de secrets" (roles/secretmanager.admin
) pour le secret, le projet, le dossier ou l'organisation.
Les rôles IAM ne peuvent être attribués au niveau de la version d'un secret.
Console
-
Accédez à la page Secret Manager dans la console Google Cloud.
-
Sur la page Secret Manager, cliquez sur le nom d'un secret.
-
Sur la page Informations détaillées sur le secret de la table Versions, repérez la version du secret à laquelle vous souhaitez accéder.
-
Dans la colonne Actions, cliquez sur Afficher plus
. -
Cliquez sur Désactiver dans le menu.
-
Dans la boîte de dialogue Désactiver la version d'un secret, cliquez sur le bouton Désactiver les versions sélectionnées.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets versions disable version-id --secret="secret-id"
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id?updateMask=state" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"state\": \"DISABLED\"}"
Activer la version d'un secret
Lorsque vous réactivez un secret désactivé, vous pouvez à nouveau y accéder.
Pour activer la version d'un secret, vous devez disposer du rôle "Administrateur de secrets" (roles/secretmanager.admin
) pour le secret, le projet, le dossier ou l'organisation.
Les rôles IAM ne peuvent être attribués au niveau de la version d'un secret.
Console
-
Accédez à la page Secret Manager dans la console Google Cloud.
-
Sur la page Secret Manager, cliquez sur le nom d'un secret.
-
Sur la page Informations détaillées sur le secret de la table Versions, repérez la version du secret à laquelle vous souhaitez accéder.
-
Dans la colonne Actions, cliquez sur Afficher plus
. -
Cliquez sur Activer dans le menu.
-
Dans la boîte de dialogue Activer la version d'un secret, cliquez sur le bouton Activer les versions sélectionnées.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets versions enable version-id --secret="secret-id"
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id?updateMask=state" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{\"state\": \"ENABLED\"}"
Détruire la version d'un secret
Lorsque vous détruisez la version d'un secret, celle-ci devient accessible. La destruction de la version d'un secret est irréversible. Avant de détruire une version de secret, essayez de la désactiver et d'observer le comportement de votre application. Vous pouvez réactiver la version du secret si vous rencontrez des problèmes inattendus.
Lorsque vous désactivez ou détruisez une version de secret ou un secret, la modification prend du temps à se propager dans le système. Si nécessaire, vous pouvez révoquer l'accès IAM du secret. Les modifications apportées aux autorisations IAM sont cohérentes en quelques secondes.
Pour détruire la version d'un secret, vous devez disposer du rôle "Administrateur de secrets" (roles/secretmanager.admin
) pour le secret, le projet, le dossier ou l'organisation.
Les rôles IAM ne peuvent être attribués au niveau de la version d'un secret.
Console
-
Accédez à la page Secret Manager dans la console Google Cloud.
-
Sur la page Secret Manager, cliquez sur le nom d'un secret.
-
Sur la page Informations détaillées sur le secret de la table Versions, repérez la version du secret à laquelle vous souhaitez accéder.
-
Dans la colonne Actions, cliquez sur Afficher plus
. -
Cliquez sur Détruire dans le menu.
-
Dans la boîte de dialogue Détruire la version du secret, saisissez le nom du secret.
-
Cliquez sur le bouton Détruire les versions sélectionnées.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets versions destroy version-id --secret="secret-id"
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id/versions/version-id:destroy" \
--request "POST" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json"
Attribuer un alias à une version de secret
Vous pouvez attribuer des alias aux versions secrètes pour y accéder plus facilement.
Pour attribuer un alias à une version de secret, mettez à jour le champ "version_aliases" sur le secret. Remplacez key par l'alias de version et value par le numéro de version du secret. Une fois qu'un alias est attribué, vous pouvez accéder aux versions des secrets à l'aide de leurs alias, de la même manière que vous pouvez accéder aux versions des secrets par leur numéro de version.
gcloud CLI
Pour utiliser Secret Manager sur la ligne de commande, commencez par installer la version 378.0.0 (ou une version ultérieure) de Google Cloud CLI. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ gcloud secrets update secret-id \
--update-version-aliases=key=value
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.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API. Vous pouvez générer des jetons d'accès avec gcloud auth print-access-token. Sur Compute Engine ou GKE, vous devez vous authentifier avec le champ d'application cloud-platform.
$ curl "https://secretmanager.googleapis.com/v1/projects/project-id/secrets/secret-id?updateMask=version_aliases" \
--request "PATCH" \
--header "authorization: Bearer $(gcloud auth print-access-token)" \
--header "content-type: application/json" \
--data "{'version-aliases': {'key': 'value'}}"
Étape suivante
- En savoir plus sur la gestion des secrets.
- En savoir plus sur la gestion de l'accès aux secrets.
- En savoir plus sur la création des secrets et leur accès.