Découvrez comment créer et gérer des secrets à l'aide de l'intégration Secret Manager de Cloud Code.
Pour obtenir des instructions détaillées sur cette tâche directement dans l'éditeur Cloud Shell, cliquez sur Visite guidée :
Avant de commencer
-
In the Google Cloud console, go to the project selector page.
-
Select or create a Google Cloud project.
Dans la barre d'état Cloud Code, cliquez sur le nom du projet actif.
Dans le menu de sélection rapide qui s'affiche, cliquez sur New Application (Nouvelle application), puis sur Cloud Run Application (Application Cloud Run).
Dans la liste des exemples Cloud Run, sélectionnez Python (Flask): Cloud Run.
Sélectionnez un dossier pour votre exemple, puis cliquez sur Create New Application (Créer une application).
- Cliquez sur
Secret Manager et patientez pendant le chargement. - Si vous êtes invité à autoriser Cloud Shell à effectuer des appels d'API Google Cloud, cliquez sur Autoriser.
- Cliquez sur add
Créer un secret . - Si vous y êtes invité, sélectionnez votre projet Google Cloud dans le menu déroulant.
- Si vous y êtes invité, activez l'API Secret Manager.
Dans l'onglet Secret Manager - Créer un secret qui s'affiche, saisissez la commande suivante dans le champ Nom:
my-secret
Dans le champ Valeur du secret, saisissez:
Hello secret!
Cliquez sur Créer un secret. Un message indiquant que le secret a bien été créé s'affiche.
Ouvrez la vue
API Cloud , puis sélectionnezAPI Secret Manager .Un onglet "Détails de l'API Google Cloud" s'ouvre avec l'en-tête API Secret Manager.
Dans la section Installer la bibliothèque cliente, cliquez sur l'onglet Python, puis sur play_arrow Exécuter dans le terminal. Cette action installe la bibliothèque cliente
google-cloud-secret-manager
.Ouvrez le fichier
requirements.txt et ajoutez la ligne suivante en bas du fichier:google-cloud-secret-manager==2.1.0
Vos modifications sont enregistrées automatiquement.
Pour obtenir la dernière valeur de votre secret, ouvrez
app.py , puis copiez et collez la fonction suivante :après la fonction hello :def access_secret_version(secret_version_id): """Return the value of a secret's version""" from google.cloud import secretmanager # Create the Secret Manager client. client = secretmanager.SecretManagerServiceClient() # Access the secret version. response = client.access_secret_version(name=secret_version_id) # Return the decoded payload. return response.payload.data.decode('UTF-8')
Pour appeler la fonction
access_secret_version
, remplacez lavariable de message par ce qui suit:message = access_secret_version("<SECRET_VERSION_ID>")
Si l'onglet Secret Manager - Créer un secret est toujours ouvert, file_copy copie l'ID.
Pour obtenir l'ID d'une version de secret à tout moment, accédez à
Secret Manager > [SECRET_NAME] > Versions, maintenez le pointeur sur votre version, puis cliquez sur Copier l'ID de ressource.Pour ajouter l'ID de version, remplacez l'espace réservé
par l'ID de version que vous avez copié.<SECRET_VERSION_ID>
- Depuis la barre d'état, ouvrez le menu
Cloud Code . - Pour créer et déployer votre service sur l'émulateur, sélectionnez
Run on Cloud Run Emulator (Exécuter sur l'émulateur Cloud Run). - Dans l'onglet Run/Debug on Cloud Run Emulator qui s'affiche, cliquez sur Run (Exécuter).
Lorsque vous exécutez la configuration pour la première fois, ce processus peut prendre jusqu'à cinq minutes. Le panneau
Output (Sortie) affiche la progression de la création et du déploiement de votre application.Une fois votre application créée, lancez-la en cliquant sur le lien "localhost" qui s'affiche dans le panneau
Sortie . La valeur de votre secret s'affiche sous le graphique de réussite.- Cliquez sur la vue
Secret Manager . - Développez votre secret en cliquant dessus.
- Dans le dossier Versions, effectuez un clic droit sur la version numérotée dont vous souhaitez afficher la valeur, puis sélectionnez Afficher la valeur de la version.
- Cliquez sur la vue
Secret Manager . - Effectuez un clic droit sur le nom de votre secret, puis sélectionnez Créer une version de secret.
- Dans l'onglet Secret Manager – Créer une version qui s'affiche, saisissez une nouvelle valeur, puis cliquez sur Créer une version.
- Une fois l'onglet Secret Manager - Créer un secret ouvert, cliquez sur file_copy Copier en haut de l'écran et copiez l'ID.
- Pour ajouter l'ID de version plus récent, remplacez la version actuelle qui apparaît dans la variable de message dans
app.py par l'ID de version plus récent que vous avez copié. - Cliquez sur Cloud Code, puis développez la section Secret Manager.
- Développez votre secret en cliquant dessus.
- Sous le dossier Versions, effectuez un clic droit sur la version numérotée que vous souhaitez désactiver.
- Sélectionnez Désactiver la version.
- Cliquez sur Cloud Code, puis développez la section Secret Manager.
- Développez votre secret en cliquant dessus.
- Dans le dossier Versions, effectuez un clic droit sur la version à détruire.
- Sélectionnez Supprimer la version.
- Cliquez sur Cloud Code, puis développez la section Kubernetes.
- Maintenez le pointeur sur le nom de votre cluster, puis cliquez sur open_in_new Ouvrir dans la console Google Cloud.
- Cliquez sur Supprimer et de nouveau sur Supprimer.
Accédez à la page Projets de la console Google Cloud :
Sélectionnez le projet que vous avez créé dans ce guide de démarrage rapide, puis cliquez sur Supprimer.
Saisissez l'ID du projet pour confirmer, puis cliquez sur Arrêter.
Cette opération ferme le projet et programme sa suppression.
Créer votre service Cloud Run
Utilisez l'éditeur Cloud Shell comme environnement pour créer votre service et votre secret Cloud Run. Les outils nécessaires au développement dans le cloud y sont préchargés.
Pour créer votre service, procédez comme suit :
Une fois que l'éditeur Cloud Shell a chargé votre service dans un nouvel espace de travail, affichez ses fichiers dans la
Créer un secret
Secret Manager vous permet de stocker et de gérer des secrets de manière sécurisée sous forme de chaînes de texte ou de blobs binaires. De plus, il gère vos secrets, ce qui signifie que vous n'avez pas à gérer de machines virtuelles ni de services d'exploitation.
Pour créer un secret avec l'intégration de Secret Manager dans Cloud Code, procédez comme suit:
Ajouter un secret à votre code
Les secrets sont parfaits pour stocker des informations de configuration telles que les mots de passe de base de données, les clés API ou les certificats TLS nécessaires à une application au moment de l'exécution.
Pour ajouter un secret à votre code:
Exécuter sur l'émulateur Cloud Run
Pour tester votre nouveau secret, exécutez votre service Cloud Run localement sur l'émulateur Cloud Run.
Afficher et créer une version du secret
La vue Secret Manager de Cloud Code vous permet d'obtenir un aperçu rapide des secrets de votre projet, ainsi que des actions permettant de les gérer.
Afficher la valeur d'une version de secret
Notez que vous ne pouvez pas modifier la version d'un secret. Pour mettre à jour la valeur d'un secret, vous devez créer une autre version.
Créer une version de secret
La valeur d'un secret est stockée dans une version de secret. Un secret peut avoir plusieurs versions. Cela s'avère utile lorsqu'un secret change. En mettant à jour un secret avec une nouvelle version, vous n'avez pas besoin de mettre à jour votre code.
latest
.
Afficher et gérer les secrets
Désactiver une version de secret
Les versions des secrets sont activées par défaut après leur création, ce qui signifie qu'elles sont accessibles. Un secret désactivé n'est pas accessible, mais vous pouvez toujours en restaurer l'accès à tout moment.
Pour désactiver la version d'un secret:
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.
Nettoyer
Pour supprimer uniquement le cluster que vous avez créé pour ce guide de démarrage rapide:
Pour supprimer votre projet (et les ressources associées, y compris les clusters) :