Sécuriser une application via le multi-stage prompting
La métaphore de la double casquette : Bâtisseur vs Auditeur
Vous avez configuré votre proxy, vos règles d'agent .cursorrules et vos extensions de surveillance. Pourtant, dans le feu de l'action, l'erreur humaine ou une distraction reste possible : vous demandez une fonctionnalité complexe, l'IA génère 150 lignes de code d'un coup, et vous êtes tenté de tout valider sans relire.
Pour éviter de pousser une faille en production, vous devez exploiter l'une des armes les plus puissantes du vibe coding : faire de l'IA son propre auditeur impitoyable.
Comprenez bien pourquoi un prompt unique comme « Écris cette fonctionnalité et sécurise-la » échoue systématiquement :
1. La casquette du Bâtisseur pressé
Dans le premier échange, l'IA cherche à satisfaire votre demande fonctionnelle au plus vite. Son attention est monopolisée par l'interface, les boutons et la logique métier. Elle prend des raccourcis dangereux pour que le résultat s'affiche sans erreur.
2. La casquette de l'Auditeur impitoyable (Self-reflection)
Une fois le code produit, vous lui faites changer radicalement de casquette : dans un second message dédié, vous lui ordonnez d'endosser le rôle d'un expert en cybersécurité senior qui a pour mission exclusive de démolir le code précédent et d'en débusquer chaque faille.
C'est ce que l'on appelle le multi-stage prompting : découper le dialogue en étapes étanches pour séparer la création de l'audit.
Le protocole de prompting en 3 étapes : Générer $\rightarrow$ Auditer $\rightarrow$ Corriger
Voici le protocole universel en 3 échanges à appliquer dans Cursor, Claude Code, Windsurf ou ChatGPT dès que vous générez du code sensible :
Étape 1 : Le prompt du Bâtisseur (Génération pure)
Exprimez votre besoin métier sans le surcharger d'injonctions contradictoires :
« Crée le composant de paiement pour mon application Next.js. Utilise Stripe et Supabase pour enregistrer la commande. »
Étape 2 : Le prompt de l'Auditeur (Self-reflection impitoyable)
Ne touchez pas au code. Forcez l'IA à changer de posture mentale dans le message suivant :
« Agis en tant qu'auditeur en cybersécurité senior spécialisé en VibeOps. Analyse le code que tu viens de générer sans complaisance :
1. Y a-t-il des clés d'API ou des variables secrètes exposées côté client ?
2. Les appels sensibles passent-ils bien par une Server Action ou un proxy backend hermétique ?
3. Les paquets et imports suggérés existent-ils réellement (vérification anti-Slopsquatting) ?
4. La table Supabase est-elle protégée par du Row Level Security (RLS) ?
Liste chaque faille détectée avec son niveau de gravité. »
Étape 3 : Le prompt de Correction (Remédiation)
L'IA applique désormais ses propres recommandations :
« Réécris l'intégralité du composant en corrigeant toutes les failles que tu viens de soulever. Isole les secrets dans le serveur et sécurise chaque accès. »
Contenu premium
Abonnez-vous ou achetez la formation pour accéder à l'intégralité du contenu.
- Accès illimité à 1700 formations