Supabase-Connector · Neu

Moderation für Supabase-Apps

Limenia sperrt Nutzer direkt in Supabase Auth, sobald dein Team entschieden hat, und hebt Sperren wieder auf. Der Webhook an dein Backend bleibt für alles andere.

Was der Connector tut

Sperren direkt in Supabase Auth

Der Connector ruft dafür die Auth-Admin-API deines Projekts auf. Nutzer löscht Limenia nie, damit eine Beschwerde eine Sperre jederzeit aufheben kann.

EntscheidungIn Supabase Auth
Dauerhafte SperreNutzer sperren (ban_duration 876000h)
Sperre auf ZeitSperren bis zum Ende, Supabase hebt sie selbst auf
Konto wiederherstellen, Ende einer SperreSperre aufheben (ban_duration none)
Inhalt entfernen, verwarnenNichts, das läuft über den Webhook
Einrichtung

In vier Schritten verbunden

Alles passiert im Dashboard unter der App, Reiter Connectoren.

  1. Lege in Supabase einen eigenen Secret Key nur für Limenia an. Er beginnt mit sb_secret_.
  2. Trag die Projekt-URL ein, etwa https://<ref>.supabase.co. Eigene Domains und selbst gehostete Instanzen gehen auch.
  3. Hinterleg den Key und schalte den Connector ein. Der Key geht direkt in den Secret Manager und wird nie wieder angezeigt.
  4. Klick auf „Verbindung testen“. Limenia fragt dafür einen Nutzer ab, den es nicht gibt, und ändert nichts.
Sicherheit

Ein Key, der nur eines tut

Ein Secret Key gibt in Supabase Zugriff auf das ganze Projekt. Limenia ruft damit nur zwei Endpunkte der Auth-Admin-API auf.

  • Ein eigener Key nur für Limenia lässt sich in Supabase jederzeit einzeln löschen.
  • Alte service_role-Keys nimmt Limenia nicht an.
  • An Supabase gehen nur die Nutzer-UUID und die Sperrdauer. Die Antwort verwirft Limenia ungelesen.
  • Jeder Aufruf läuft nur über https und nie an private oder interne Adressen.
Gut zu wissen

Sitzungen und Tokens

Supabase kann Sitzungen nicht per Nutzer-ID beenden. Die Sperre greift sofort bei Anmeldung, Token-Refresh und Aufrufen an Supabase Auth. Ein schon ausgestelltes Access-Token gilt bis zu seinem Ablauf, im Standard bis zu einer Stunde.

  • Prüf Nutzer im Backend mit getUser() statt getClaims(), wenn Sperren sofort greifen sollen, oder verkürz die Laufzeit der JWTs.
  • Wähl für dein Projekt eine feste EU-Region, etwa Frankfurt (eu-central-1).
  • Ein Beispiel mit Supabase Edge Functions liegt im Beispiel-Repo auf GitHub.

Häufige Fragen

Deine Frage ist nicht dabei? Schreib uns, wir antworten persönlich.

[email protected]

Warum braucht Limenia einen Secret Key?

Die Auth-Admin-API von Supabase nimmt nur Secret Keys an, Rechte je Bereich gibt es dort nicht. Deshalb empfehlen wir einen eigenen Key nur für Limenia, den du jederzeit einzeln widerrufen kannst.

Welche Nutzer-ID muss mein Backend schicken?

Die UUID des Nutzers in Supabase Auth, also auth.users.id oder den Claim sub im Access-Token. Limenia prüft das Format vor dem Senden.

Werden gesperrte Nutzer sofort abgemeldet?

Nein, das kann Supabase nicht per Nutzer-ID. Neue Anmeldungen und Token-Refreshs scheitern sofort, ein ausgestelltes Access-Token gilt bis zu seinem Ablauf. Mit getUser() im Backend greift die Sperre auch dort sofort.

Löscht Limenia Nutzer in Supabase?

Nein. Eine Löschung ließe sich nach einer erfolgreichen Beschwerde nicht rückgängig machen. Limenia sperrt und entsperrt nur.

Bereit für dein Meldeverfahren?

Wir zeigen dir Limenia an einem Beispiel und klären, was deine App für den DSA und die Stores braucht.

Oder direkt per E-Mail: [email protected]