Retour à la leçonMission
Mission : rapatrier une clé secrète hors du bundle client
Corriger une fuite de secret côté client causée par un mauvais placement de "use client", et concevoir la frontière serveur/client correcte.
Contexte
Un audit de sécurité repère, dans le bundle JavaScript envoyé au navigateur, la chaîne littérale d'une clé d'API de paiement. En creusant src/app/cours/[id]/page.jsx, le fichier commence par "use client"; tout en haut, puis importe STRIPE_SECRET_KEY depuis un fichier de config et fait await db.cours.findUnique(...) directement dans le composant, à côté d'un bouton "Ajouter aux favoris" qui a besoin de useState pour son état visuel.