Aller au contenu principal

Menu de commandes

Accédez à une page ou recherchez dans le catalogue

Outils et scripts IA

Vérification de la configuration et des fonctions Supabase

Vérifiez vos projets Supabase avant de déployer : clés de service dans des variables NEXT_PUBLIC_ ou VITE_, secrets dans config.toml, jokers de redirection qui acceptent n'importe quel site, Edge Functions ouvertes utilisant la clé de service et paramètres d'authentification faibles.

$5.00

Ce que vous recevez : 1 fichier · 47.97 KB · ZIP

Voir les options d'achat

Description du produit

NEXT_PUBLIC_SUPABASE_SERVICE_ROLE_KEY livre à chaque visiteur la clé qui contourne toutes les politiques Row Level Security, et "https://*.vercel.app/**" dans votre liste de redirections permet à toute personne disposant d'un compte Vercel de recevoir les redirections magic link et OAuth de vos utilisateurs. Ce skill détecte ces erreurs Supabase ainsi que les autres listées ci-dessous avant votre déploiement, et vous explique comment corriger chacune d'elles.

Votre agent exécute un scanner sur supabase/config.toml (y compris les blocs de branches [remotes]), le code des Edge Functions dans supabase/functions, le code client et serveur JavaScript et TypeScript (Next.js, SvelteKit, Nuxt, Vite, Astro, Expo), les fichiers Expo app.json et eas.json, les fichiers Python, Dart, Swift et Kotlin contenant des clés, ainsi que les fichiers .env. Il lit le rôle contenu dans les anciennes clés JWT, connaît les nouveaux formats sb_publishable_ et sb_secret_, ignore les clés publiques fixes de la stack CLI locale, laisse de côté les liens profonds d'applications (myapp://**), traite les valeurs env() et encrypted: comme des références et n'évalue les paramètres d'inscription et de mot de passe que lorsque config.toml configure un projet déployé, de sorte que le fichier généré par supabase init n'est pas signalé. Il n'exécute jamais de code et ne se connecte jamais à Supabase. Il renvoie BLOCK, REVIEW ou NOT FLAGGED, avec le fichier, la ligne, la raison et une approche plus sûre. Les secrets ne sont jamais affichés.

Ce qui est vérifié

BLOCK (à corriger avant la mise en production)

  • U01 : la clé service_role ou secrète dans une variable publique (NEXT_PUBLIC_, VITE_, EXPO_PUBLIC_, PUBLIC_ et autres, y compris dans eas.json), une variable publique contenant une clé de service, ou une clé de service sous Nuxt runtimeConfig.public, Expo extra (app.config ou app.json), Next.js env ou Vite define
  • U02 : un JWT service_role ou une clé sb_secret_ écrits en dur dans le code, app.json, eas.json ou un modèle env commité
  • U03 : des secrets OAuth, SMTP, SMS, CAPTCHA, auth hook, Studio, S3, Edge Runtime ou Vault écrits dans config.toml au lieu de env()
  • U04 : des URL de redirection dont les jokers acceptent les sites d'autres personnes (** dans l'hôte, y compris le modèle de prévisualisation Netlify de la documentation, *.com, *.vercel.app, *-*.vercel.app, *.netlify.app, *.pages.dev et autres hébergeurs partagés)

REVIEW (à vérifier avant la publication)

  • U11 : des Edge Functions avec la vérification JWT désactivée (verify_jwt = false, --no-verify-jwt, withSupabase auth 'none' ou 'publishable') qui utilisent la clé de service sans jamais vérifier l'appelant (JWT utilisateur, clé secrète, signature de webhook ou en-tête secret)
  • U12 : l'inscription par e-mail sans confirmation de l'e-mail sur un projet déployé
  • U13 : une longueur minimale de mot de passe inférieure à 8 sur un projet déployé
  • U14 : des connexions anonymes sans CAPTCHA sur un projet déployé
  • U15 : une expiration JWT supérieure à une heure, la rotation des refresh tokens désactivée, une confirmation de changement d'e-mail sur une seule adresse ou la vérification du nonce ignorée sur un projet déployé
  • U16 : des URL de site ou de redirection en http:// simple pour des hôtes non locaux
  • U17 : des buckets de stockage publics, dans config.toml ou créés dans le code, sauf si les mots du nom désignent du contenu public comme avatars ou profile-pictures
  • U18 : getSession() considéré comme fiable dans le code serveur (middleware, proxy, route handlers, composants et actions serveur) sans getClaims() ni getUser()

Ce qui est inclus

  • Le scanner (Python 3.9+, bibliothèque standard uniquement)
  • Un guide des règles avec la raison, l'approche plus sûre et la source officielle de Supabase de chaque règle
  • Un projet d'exemple risqué et un projet sûr (config.toml, une Edge Function, un middleware Next.js, un script de seed et un modèle env), ainsi que le rapport réel produit par le scanner sur le projet risqué

Limites

Il lit les fichiers tels qu'ils sont écrits : les paramètres modifiés uniquement dans le tableau de bord Supabase, les politiques Row Level Security et les migrations SQL, ainsi que les secrets définis avec supabase secrets set, lui sont inconnus. La vérification de l'appelant d'une Edge Function est recherchée dans le même fichier, et U11 a besoin du dossier du projet contenant config.toml ou le script de déploiement. L'exposition au navigateur est évaluée d'après les préfixes des variables et les paramètres Nuxt, Expo, Next.js env et Vite define, et non en suivant les imports. NOT FLAGGED n'est pas une garantie.

Contenu

Un fichier ZIP de 19 fichiers : SKILL.md, le scanner dans scripts/ (8 fichiers Python), references/rules.md (chaque règle avec sa raison et son approche plus sûre) et examples/ (10 fichiers d'exemple plus report.md, la sortie réelle du scanner sur l'exemple risqué).

Mode d'emploi : Il s'agit d'un skill d'agent : un dossier contenant un fichier SKILL.md et des scripts Python qu'un agent de programmation IA comme Claude Code, Cursor ou Codex CLI peut exécuter. Décompressez-le dans le dossier des skills de votre agent (pour Claude Code : ~/.claude/skills/), puis demandez à votre agent de vérifier votre projet. Les scripts fonctionnent aussi seuls avec Python 3.9 ou plus récent, sans rien à installer. Ils se contentent de lire vos fichiers : aucun accès réseau, et rien n'est envoyé nulle part.

Ce que vous recevez

1 fichier · 47.97 KB

  • supabase-config-functions-check-1.0.0.zipZIP · 47.97 KB
LicenceUsage commercial autorisé
Vérification du paquetRéussie

Getly a ouvert les fichiers envoyés et n'a rien trouvé qui empêche leur ouverture. Ce n'est ni une analyse antivirus ni une note de qualité.

Publié12 nov. 2026
Taille du fichier47.97 KB
Format du fichierZIP
Versionv1.0

Tags

supabaseedge-functionsauthsecurityapi-keysai agent skill
R
RR HH

Questions fréquentes

Ai-je accès au produit immédiatement ?

Oui. C'est un produit numérique : vous pouvez le télécharger juste après le paiement, directement depuis votre bibliothèque.

Puis-je l'utiliser pour des projets commerciaux ?

Oui. L'usage commercial est autorisé : utilisez-le dans votre propre activité et dans ce que vous vendez. Vous ne pouvez pas revendre ni redistribuer le fichier lui-même.

Quelle est votre politique de remboursement ?

Vous pouvez demander un remboursement dans un délai de 30 jours. Si quelque chose ne va pas, demandez-le depuis votre commande et l'équipe Getly l'examine.

Quels formats et quelles tailles de fichier vais-je recevoir ?

Vous téléchargerez 1 fichier - ZIP - 47.97 KB au total.

Ai-je droit aux mises à jour gratuites ?

Oui : quand le vendeur publie une nouvelle version, vous pouvez retélécharger les derniers fichiers depuis votre bibliothèque sans frais. Consultez le journal des modifications pour les dernières mises à jour.

Prix

$5.00