Aller au contenu

Clés API

Chaque projet possède deux clés API. Elles déterminent le rôle Postgres utilisé pour les requêtes et contrôlent l’accès à vos données.

Clé anon (mc_anon_…)

Peut être incluse dans le code navigateur et mobile. Elle accorde uniquement le rôle Postgres anon, ce qui signifie que les requêtes sont soumises à vos politiques RLS.

Utilisez des variables d’environnement pour éviter de la coder en dur :

Next.js
// Vite
const massi = createClient({ key: import.meta.env.VITE_MASSI_KEY, ... })
const massi = createClient({ key: process.env.NEXT_PUBLIC_MASSI_KEY, ... })

Clé service (mc_service_…)

Ne l’exposez jamais dans le code client. Elle accorde le rôle Postgres service_role, qui contourne toutes les politiques RLS. Utilisez-la pour :

  • Les routes API côté serveur
  • Les jobs et workers en arrière-plan
  • Les scripts d’administration et migrations

Rotation des clés

Allez dans Projet → Clés API → Pivoter dans le portail. Les anciennes clés cessent de fonctionner immédiatement. Mettez à jour vos déploiements avant de pivoter.

En cas de fuite

Si votre clé anon fuit, pivotez-la. Les dégâts sont limités par vos politiques RLS.

Si votre clé service fuit, pivotez-la immédiatement — elle contourne toutes les RLS. Traitez-la comme un mot de passe root de base de données.