Aller au contenu principal

Gestion des secrets

Statut

Document de cadrage sécurité — version initiale.

Objectif

Les secrets DMV donnent accès à des systèmes critiques : base de données, Supabase, Stripe, JWT, email, queues, IA et infrastructure.

Ils doivent être stockés, transmis, utilisés et renouvelés avec des règles strictes.

État actuel visible

Le fichier deployment/.env.production.example documente plusieurs secrets ou paramètres sensibles :

  • APP_KEY ;
  • accès PostgreSQL ;
  • SUPABASE_SERVICE_ROLE_KEY ;
  • SUPABASE_JWT_SECRET ;
  • STRIPE_SECRET ;
  • STRIPE_WEBHOOK_SECRET ;
  • secrets mail ;
  • paramètres Redis/queue ;
  • variables de sécurité de session.

Le fichier précise aussi que le vrai .env de production ne doit pas être commité et que APP_DEBUG=false doit rester actif en production.

Règles obligatoires

  • Ne jamais commiter un secret réel.
  • Ne jamais exposer une clé service role Supabase côté frontend.
  • Ne jamais exposer STRIPE_SECRET ou STRIPE_WEBHOOK_SECRET.
  • Utiliser des variables d'environnement par environnement.
  • Limiter les droits des clés au besoin réel.
  • Révoquer immédiatement un secret suspecté compromis.
  • Séparer les secrets de développement, staging et production.

Secrets par domaine

DomaineSecrets concernésAttention
LaravelAPP_KEY, tokens SanctumRotation délicate, impact sessions/chiffrement.
SupabaseJWT secret, service roleService role interdit côté client.
PostgreSQLhost, user, password, SSLAccès direct limité aux services autorisés.
Stripesecret key, webhook secretAucun stockage local de données bancaires sensibles.
IAclés providersQuotas, coûts et fuite de données à surveiller.
Emailidentifiants SMTP/APIRisque d'envoi abusif ou usurpation.
Redis/queuescredentialsRisque sur jobs et traitements asynchrones.

Rotation cible

Une rotation de secret doit prévoir :

  1. création du nouveau secret ;
  2. déploiement contrôlé ;
  3. vérification fonctionnelle ;
  4. révocation de l'ancien secret ;
  5. journalisation de l'opération ;
  6. communication interne si impact applicatif.

Accès humain

Les secrets de production doivent être accessibles uniquement aux personnes ou systèmes qui en ont besoin.

La cible doit définir :

  • qui peut lire un secret ;
  • qui peut le modifier ;
  • où les secrets sont stockés ;
  • comment l'accès est révoqué ;
  • comment les accès sont audités.

Points à clarifier

  • Coffre de secrets cible.
  • Procédure de rotation par type de secret.
  • Politique d'accès CI/CD.
  • Gestion des secrets IA providers.
  • Détection de secrets accidentellement commis.
  • Processus de réponse à compromission.