Pratique

Checklist de déploiement et sécurité

Déployez web et admin avec migrations explicites, cron, readiness, réseau fiable et contrôles de production.

Synchronisé avec le commit 7d452a6 du starter.

Déployez web et apps/admin comme services et origines séparés. Utilisez Node >=20.19.0 <23 et pnpm 10.22.0, lancez pnpm lint, pnpm test:cov, pnpm build, puis pnpm db:check:prod et pnpm db:migrate:prod. Les migrations ne sont jamais automatiques.

Contrôles obligatoires

  • BETTER_AUTH_SECRET fort, URL correctes, PostgreSQL de production et sauvegardes restaurées en exercice.
  • Rate limit distribué Redis et source/header IP explicitement fiable.
  • Turnstile ; flags démo et logs de liens auth désactivés.
  • CRON_SECRET et /api/cron/jobs toutes les cinq minutes (vercel.json l’inclut).
  • Stripe live, webhook, Portal sûr et Price IDs si facturation.
  • Objets privés, moindre privilège, CORS correct et URL courtes si stockage.
  • Domaine e-mail vérifié et politiques légales/rétention revues.

/api/health teste la vie ; /api/ready contrôle environnement, base, migrations, Redis et file. Une file dégradée doit alerter même si le trafic passe.

HSTS est actif en production et CSP dispose d’un mode report-only. Observez avant d’imposer une politique compatible. Après déploiement, testez auth, isolation, checkout/webhooks, cron, export/suppression et MFA admin. Lisez DEPLOYMENT.md, docs/security-headers.md et .env.example.

Checklist de déploiement et sécurité · Sushi SaaS