Notes de terrain
De courtes notes sur de vrais bugs de projets clients : ce qui a cassé, le chiffre qui l’a révélé, le correctif et comment vérifier votre propre application.
- SupabaseSupabase 42501 permission denied : un droit, pas la RLS
Pourquoi Supabase renvoie 42501 permission denied, ce qui change le 30 octobre 2026, et le droit, la RLS et la politique qui corrigent, reproduits en local.
- SupabaseSupabase exposed schemas : ce que la liste ouvre
Ce que signifie Exposed schemas dans Supabase, comment mon audit de sécurité note les schémas en plus, et une requête SQL qui trouve les tables sans RLS.
- PostgresUn NULL dans IF NOT a sauté le contrôle sur 3683 tâches
Dans une fonction SECURITY DEFINER, false OR NULL vaut NULL et IF NOT saute le RAISE. Pourquoi c'est sûr en RLS, la correction coalesce, comment balayer.
- SupabaseSupabase raw_user_meta_data : une inscription devient Owner
Un trigger handle_new_user lisait role_id dans raw_user_meta_data, fixé par le navigateur. Comment tout le monde devenait Owner, la correction, un test.
- SupabaseRLS multi-tenant Supabase : fuite entre deux organisations
Une politique RLS qui teste l'appartenance est vraie dans les deux organisations pour un utilisateur membre des deux. Ma sonde, la correction, un test.