Skip to content
Learni
View all tutorials
DevOps & Sécurité

Comment sécuriser vos secrets avec HashiCorp Vault en 2026

18 minINTERMEDIATE

Introduction

HashiCorp Vault est la solution de référence pour centraliser et sécuriser les secrets dans les environnements modernes. En 2026, les applications cloud-native doivent éviter de stocker des clés API ou des mots de passe en clair. Vault offre un contrôle d'accès fin, une rotation automatique et un audit complet. Ce tutoriel vous guide pas à pas pour déployer Vault et l'intégrer dans une application Node.js TypeScript. Vous apprendrez à créer des politiques, activer des moteurs de secrets et récupérer des identifiants dynamiquement.

Prérequis

  • Node.js 20+ et npm
  • Docker installé
  • Connaissances de base en TypeScript et REST
  • Un terminal Linux ou WSL

Démarrage de Vault en mode dev

terminal
docker run -d --name vault -p 8200:8200 -e 'VAULT_DEV_ROOT_TOKEN_ID=myroot' hashicorp/vault:latest

Cette commande lance Vault en mode développement avec un token root. Utile pour tester rapidement, mais jamais en production.

Configuration du client Vault

src/vault-client.ts
import * as vault from 'node-vault';

const client = vault({
  apiVersion: 'v1',
  endpoint: 'http://localhost:8200',
  token: process.env.VAULT_TOKEN || 'myroot'
});

export default client;

Ce module initialise le client Vault avec le token root. Stockez toujours le token dans une variable d'environnement.

Activation du moteur KV v2

terminal
curl -X POST -H "X-Vault-Token: myroot" \
  -d '{"type":"kv","options":{"version":"2"}}' \
  http://localhost:8200/v1/sys/mounts/secret

Active le moteur KV version 2 sous le chemin /secret pour stocker des paires clé-valeur versionnées.

Création d'une politique d'accès

policy.json
{
  "path": {
    "secret/data/app/*": {
      "capabilities": ["read", "list"]
    }
  }
}

Cette politique limite l'accès aux secrets de l'application. Appliquez-la ensuite via l'API ou l'interface Vault.

Application de la politique et création de token

terminal
curl -X POST -H "X-Vault-Token: myroot" \
  -d '{"policies":["app-policy"]}' \
  http://localhost:8200/v1/auth/token/create

Génère un token limité à la politique app-policy. Utilisez ce token dans vos applications au lieu du token root.

Bonnes pratiques

  • Utilisez toujours des tokens à durée de vie limitée et renouvelables
  • Activez l'audit logging dès la mise en production
  • Préférez les secrets dynamiques (database, AWS) aux secrets statiques
  • Stockez le token root hors ligne et désactivez-le après initialisation
  • Versionnez toutes vos politiques dans Git

Erreurs courantes à éviter

  • Laisser le mode dev activé en production
  • Oublier de renouveler les tokens avant expiration
  • Stocker le token root dans le code source
  • Ne pas activer TLS pour les communications client-serveur

Pour aller plus loin

Découvrez nos formations avancées sur la gestion des secrets et la sécurité cloud : https://learni-group.com/formations