Prüfregel · RSC-SEC-068
Edge Function ohne JWT-Prüfung
Findet `verify_jwt = false` in `supabase/config.toml` — die Serverfunktion ist ohne Anmeldung aufrufbar.
Warum das zählt
Supabase prüft standardmäßig den Bearer-Token, bevor eine Edge Function überhaupt startet. Ist `verify_jwt = false` gesetzt, entfällt diese Schranke: Der Endpunkt ist für jeden im Internet aufrufbar, ohne Konto und ohne Anmeldung.
Die Einstellung landet fast immer aus einem legitimen Grund im Projekt — ein Zahlungs- oder Mail-Webhook kann keinen Nutzer-Token mitschicken. Der Fehler ist nicht das Abschalten, sondern das, was danach fehlt: die eigene Prüfung des Aufrufers.
Fix: Für nutzerbezogene Funktionen die Prüfung eingeschaltet lassen. Für Webhooks die Signatur des Anbieters in der Funktion verifizieren (Stripe, GitHub und Co. senden dafür einen Header) und zusätzlich prüfen, dass der Aufruf zum erwarteten Vorgang gehört.
Prüfstufe
So behebt ihr es
Prüfung aktiviert lassen; bei Webhooks stattdessen die Signatur des Absenders in der Funktion verifizieren.