veza/docs/runbooks/SECRET_ROTATION.md

1.2 KiB
Raw Permalink Blame History

Runbook — Rotation des secrets

JWT_SECRET

  1. Générer un nouveau secret : openssl rand -base64 32
  2. Déployer avec lancien et le nouveau (dual-secret) si lapp le supporte
  3. Sinon : maintenance window
    • Mettre à jour JWT_SECRET dans le déploiement
    • Redémarrer lAPI
    • Tous les tokens existants sont invalidés (re-login requis)

CHAT_JWT_SECRET

Même procédure que JWT_SECRET. Doit être synchronisé entre backend et chat/stream si partagé.

OAUTH_ENCRYPTION_KEY

Utilisé pour chiffrer les tokens OAuth en DB. Rotation complexe :

  1. Ne pas supprimer lancienne clé tant que des tokens chiffrés existent
  2. Ajouter la nouvelle clé dans la config
  3. Les nouveaux tokens utilisent la nouvelle clé
  4. Après expiration des anciens tokens, retirer lancienne clé

STREAM_SERVER_INTERNAL_API_KEY / INTERNAL_API_KEY

Doivent correspondre entre backend et stream server.

  1. Générer : openssl rand -hex 32
  2. Mettre à jour les deux côtés quasi-simultanément
  3. Redémarrer backend et stream server

DATABASE_URL

  1. Créer un nouvel utilisateur avec un nouveau mot de passe en DB
  2. Mettre à jour DATABASE_URL dans le déploiement
  3. Redémarrer lAPI
  4. Révoquer lancien utilisateur après validation