Google Cloud Secret Manager est un service de gestion des secrets qui permet de stocker, de gérer et de sécuriser les informations sensibles telles que les clés API, les mots de passe, les certificats et autres secrets. Il offre des fonctionnalités avancées pour le chiffrement, la gestion des accès et l'audit des secrets. Secret Manager est particulièrement utile pour les équipes de développement et de sécurité qui souhaitent centraliser et sécuriser la gestion des secrets.
Présentation de Google Cloud Secret Manager
Qu'est-ce que Google Cloud Secret Manager ?
Google Cloud Secret Manager est un service qui vous permet de :
- Stocker des secrets : Stocker des informations sensibles de manière sécurisée.
- Gérer les accès : Contrôler l'accès aux secrets avec des politiques et des rôles.
- Chiffrer les données : Chiffrer les secrets en transit et au repos.
- Auditer les accès : Suivre et auditer l'accès aux secrets.
Installation et Configuration
Pour interagir avec Google Cloud Secret Manager via la ligne de commande, vous pouvez utiliser l'outil gcloud
de la Google Cloud SDK. Assurez-vous que la Google Cloud SDK est installée et configurée sur votre machine.
Configurer gcloud
gcloud init
Vous devrez fournir vos informations d'identification Google Cloud.
Exemples de Ligne de Commande
Voici quelques exemples de commandes avancées pour utiliser Google Cloud Secret Manager.
Créer un Secret
Pour créer un secret dans Secret Manager :
echo -n "my-secret-value" | gcloud secrets create my-secret --data-file=- --location=global
Ajouter une Version à un Secret
Pour ajouter une nouvelle version à un secret existant :
echo -n "new-secret-value" | gcloud secrets versions add my-secret --data-file=-
Récupérer un Secret
Pour récupérer la dernière version d'un secret :
gcloud secrets versions access latest --secret=my-secret
Lister les Secrets
Pour lister tous les secrets dans un projet :
gcloud secrets list --project=my-project
Lister les Versions d'un Secret
Pour lister toutes les versions d'un secret spécifique :
gcloud secrets versions list my-secret
Supprimer un Secret
Pour supprimer un secret :
gcloud secrets delete my-secret
Supprimer une Version d'un Secret
Pour supprimer une version spécifique d'un secret :
gcloud secrets versions destroy 1 --secret=my-secret
Attribuer une Politique d'Accès à un Secret
Pour attribuer une politique d'accès à un utilisateur ou à une application :
gcloud secrets add-iam-policy-binding my-secret --member="user:user@example.com" --role="roles/secretmanager.secretAccessor"
Lister les Politiques d'Accès d'un Secret
Pour lister les politiques d'accès d'un secret :
gcloud secrets get-iam-policy my-secret
Intégrer Google Cloud Secret Manager dans un Pipeline CI/CD
Pour intégrer Google Cloud Secret Manager dans un pipeline CI/CD, vous pouvez ajouter une étape de récupération des secrets dans votre fichier de configuration CI/CD. Par exemple, pour GitHub Actions, vous pouvez ajouter une étape comme suit :
name: Google Cloud Secret Manager on: [push, pull_request] jobs: secret-manager: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up Google Cloud SDK uses: google-github-actions/setup-gcloud@v0.2.0 with: version: 'latest' service_account_key: ${{ secrets.GCP_SA_KEY }} project_id: ${{ secrets.GCP_PROJECT_ID }} - name: Create Secret run: | echo -n "my-secret-value" | gcloud secrets create my-secret --data-file=- --location=global - name: Access Secret run: | gcloud secrets versions access latest --secret=my-secret
Conclusion
Google Cloud Secret Manager est un outil puissant pour stocker, gérer et sécuriser les informations sensibles. En utilisant l'outil gcloud
, vous pouvez automatiser et simplifier la création, la gestion et la récupération des secrets dans Google Cloud Secret Manager. Ces exemples de commandes et de configurations vous donnent un bon point de départ pour commencer à utiliser Google Cloud Secret Manager.