Ton app Lovable est-elle sécurisée ?
Sommaire
Lovable écrit ton front et branche une base derrière, Supabase ou Lovable Cloud. Les fuites viennent presque toujours de la jonction entre les deux : une clé au mauvais endroit, une table trop ouverte. Voici quoi regarder, comment, et ce que Rustine vérifie pour toi.
En bref
| Risque | Où Rustine le vérifie |
|---|---|
| Une clé secrète dans le front | Scan gratuitCode GitHub · Solo, Pro |
| Une table Supabase sans RLS | Audit complet · Solo, ProSupabase connecté · Solo, ProCode GitHub · Solo, Pro |
| Une policy qui laisse tout passer | Audit complet · Solo, ProSupabase connecté · Solo, ProCode GitHub · Solo, Pro |
| La clé service_role dans le front | Scan gratuitCode GitHub · Solo, Pro |
| Un .env ou un .git en ligne | Scan gratuit |
| Le scan approfondi jamais lancé | Scan gratuitAudit complet · Solo, Pro |
1. Une clé secrète dans le front
Tout ce qui part dans le navigateur se lit. Lovable le dit lui-même : une clé d'API ne peut pas être gardée en sécurité dans le code côté client. Une clé OpenAI ou Stripe qui fuit, c'est ta facture.
Vérifie toi-même
Dans Lovable, tes clés vont dans Secrets, utilisées par des fonctions côté serveur. Dans ton code, aucune clé secrète dans une variable qui commence par VITE_ : Vite la copie dans le JavaScript publié.
Ce que Rustine vérifie
Dès le scan gratuit, Rustine cherche les clés secrètes (Stripe, OpenAI, Anthropic, service_role…) dans le JavaScript que ton site sert. Sur GitHub, il repère une clé dans une variable publique ou une clé d'IA appelée depuis le navigateur.
Scan gratuitCode GitHub · Solo, Pro
2. Une table Supabase sans RLS
Ta clé anon est dans le front, c'est normal. Mais sans Row Level Security, elle suffit pour lire et modifier toute la table.
Vérifie toi-même
Le scan de sécurité de Lovable vérifie la RLS à chaque publication. Dans Supabase, le Security Advisor liste les tables sans RLS en erreur.
Ce que Rustine vérifie
Après preuve, l'audit complet compte les lignes que ta clé anon laisse lire, sans en lire une. Supabase connecté, il lit l'état de la RLS de chaque table. Sur GitHub, il repère les migrations qui l'oublient.
Audit complet · Solo, ProSupabase connecté · Solo, ProCode GitHub · Solo, Pro
3. Une policy qui laisse tout passer
Pour débloquer une requête, l'agent écrit parfois une policy using (true). La RLS est activée, mais la table reste ouverte à tous.
Vérifie toi-même
Le Security Advisor de Supabase l'affiche en avertissement, « Permissive RLS policy ». Quand Lovable te propose une policy, relis sa condition.
Ce que Rustine vérifie
Supabase connecté, Rustine remonte chaque policy en using (true). L'audit complet voit l'effet. Sur GitHub, il les repère dans tes migrations.
Audit complet · Solo, ProSupabase connecté · Solo, ProCode GitHub · Solo, Pro
Sources : [4]
4. La clé service_role dans le front
Cette clé ignore toutes tes règles. Collée dans le front pour « faire marcher » une requête, elle ouvre toute ta base.
Vérifie toi-même
Dans ton code, cherche SERVICE_ROLE et sb_secret_ : seulement dans des fonctions côté serveur. Si elle a été publiée, change-la tout de suite dans Supabase.
Ce que Rustine vérifie
Dès le scan gratuit, Rustine la cherche dans le JavaScript servi. Sur GitHub, dans tes variables publiques.
Scan gratuitCode GitHub · Solo, Pro
Sources : [5]
5. Un .env ou un .git en ligne
Si tu exportes ton app sur GitHub et l'héberges ailleurs, un fichier .env ou un dossier .git mal placé se télécharge avec tes clés et ton code.
Vérifie toi-même
Ouvre ton-site.fr/.env et ton-site.fr/.git/HEAD : tu dois tomber sur une page d'erreur.
Ce que Rustine vérifie
Dès le scan gratuit, Rustine vérifie les fichiers .env courants et le dossier .git, en ne lisant que leurs premiers octets.
Scan gratuit
6. Le scan approfondi jamais lancé
Le scan rapide de Lovable tourne à chaque publication. Le scan approfondi, qui relit le code et cherche les secrets, ne tourne pas tout seul.
Vérifie toi-même
Avant une mise en ligne qui compte, lance le scan approfondi depuis la vue Security de ton projet Lovable.
Ce que Rustine vérifie
Rustine ne remplace pas ce scan. Il regarde ton site publié de l'extérieur, et refait un audit complet chaque semaine avec Solo et Pro.
Scan gratuitAudit complet · Solo, Pro
Sources : [1]
Scanne ton site, c'est gratuit
Colle ton adresse : le scan rapide lit ce que voit un visiteur, rien de plus. Le détail s'affiche une fois que tu as prouvé que le site est à toi.
Outils gratuitsVérificateur SupabaseTest des en-têtes de sécurité
Questions
Lovable est-il sécurisé ?
La plateforme scanne ton projet à chaque publication. Ce qui reste à ta charge : où vont tes clés, et ce que les règles de ta base laissent lire.
Ma clé Supabase est visible dans mon app Lovable. Est-ce grave ?
Pas si c'est la clé anon ou publishable : elle est faite pour être publique. Si c'est la clé service_role ou une clé sb_secret_, change-la tout de suite.
Sources
- Lovable, Security (documentation), consulté le 15/10/2026
- Lovable, Secrets (documentation), consulté le 15/10/2026
- Vite, Env Variables and Modes, consulté le 15/10/2026
- Supabase, Performance and Security Advisors, consulté le 15/10/2026
- Supabase, Understanding API keys, consulté le 15/10/2026