Une version de secret contient les données secrètes réelles, ainsi que l'état et les métadonnées du secret. Cet article 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 de secret
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. La version du secret peut être réactivée pour 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.
UI Web
-
Accédez à la page Secret Manager dans Cloud Console :
-
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 le tableau et lisez ses métadonnées.
Ligne de commande
Pour utiliser Secret Manager avec la ligne de commande, commencez par installer ou mettre à niveau le SDK Cloud vers la version 305.0.0 ou une version ultérieure.
$ 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#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java.
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.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API.
$ 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" \
--header "x-goog-user-project: project-id"
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.
UI Web
-
Accédez à la page Secret Manager dans Cloud Console :
-
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.
Ligne de commande
Pour utiliser Secret Manager avec la ligne de commande, commencez par installer ou mettre à niveau le SDK Cloud vers la version 305.0.0 ou une version ultérieure.
$ 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#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java.
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.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API.
$ 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" \
--header "x-goog-user-project: project-id"
Désactiver la version d'un secret
Lorsque vous désactivez la version d'un secret, celle-ci n'est plus 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.
UI Web
-
Accédez à la page Secret Manager dans Cloud Console :
-
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.
Ligne de commande
Pour utiliser Secret Manager avec la ligne de commande, commencez par installer ou mettre à niveau le SDK Cloud vers la version 305.0.0 ou une version ultérieure.
$ 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#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java.
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.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API.
$ 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" \
--header "x-goog-user-project: project-id" \
--data "{\"state\": \"DISABLED\"}"
Activer la version d'un secret
Lorsque vous activez un secret désactivé, vous pouvez de 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.
UI Web
-
Accédez à la page Secret Manager dans Cloud Console :
-
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.
Ligne de commande
Pour utiliser Secret Manager avec la ligne de commande, commencez par installer ou mettre à niveau le SDK Cloud vers la version 305.0.0 ou une version ultérieure.
$ 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#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java.
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.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API.
$ 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" \
--header "x-goog-user-project: project-id" \
--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. Nous vous recommandons de désactiver la version d'un secret avant de la détruire et d'observer le comportement de votre application pendant un certain temps. Vous pourrez ainsi la réactiver si vous rencontrez des problèmes inattendus.
Lorsque vous désactivez ou détruisez un secret ou la version d'un secret, la modification nécessite un certain délai de propagation dans le système. Si nécessaire, vous pouvez révoquer l'accès IAM au 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.
UI Web
-
Accédez à la page Secret Manager dans Cloud Console :
-
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.
Ligne de commande
Pour utiliser Secret Manager avec la ligne de commande, commencez par installer ou mettre à niveau le SDK Cloud vers la version 305.0.0 ou une version ultérieure.
$ 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#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Secret Manager pour Go.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Secret Manager pour Java.
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.
PHP
Pour exécuter ce code, commencez par apprendre à utiliser PHP sur Google Cloud et à installer le SDK Secret Manager pour PHP.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Secret Manager pour Python.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Secret Manager pour Ruby.
API
Ces exemples utilisent curl pour illustrer l'utilisation de l'API.
$ 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" \
--header "x-goog-user-project: project-id"
Et ensuite ?
- 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.