Dokumentation/Entwickler
Zurück
  • Erste Schritte
    • Frontends und App-Typen
    • Umgebungen und Endpunkte
  • OAuth-Clients
    • Client-ID und Client-Secret
    • Redirect-URIs und Start-URL
    • Secret erneuern
  • Login with appsolut
    • Authorization-Code-Flow
    • Tokens und Claims
    • Frontend-Rolle
    • Abmeldung
    • Widerruf und ausgestellte Tokens
    • Fehler des Token-Endpunkts
  • Frontend-Schlüssel
    • Einen Schlüssel ausstellen und aufbewahren
    • Einen Schlüssel senden
    • Wechseln und widerrufen
  • Mitglieder-API
    • Berechtigung aus einem Backend
    • Das angemeldete Mitglied
    • Ergebnisse, Ratenlimits und Fehler
    • Ist ein Antragsteller ein berechtigtes Mitglied?
    • Die Mitgliedschaft des angemeldeten Frontend-Benutzers
  • appsolut Register-API
    • Die API umsetzen
    • Anbinden und testen
    • Ein Mitglied mit seinem Prüfcode verifizieren
    • Alle Mitglieder auflisten
    • Der Status mehrerer Mitglieder
    • Der Status eines Mitglieds
    • Die Personendaten mehrerer Mitglieder
    • Die Personendaten eines Mitglieds
    • Die Claims mehrerer Mitglieder
    • Die Claims eines Mitglieds
    • Health-Check

Fehler des Token-Endpunkts

Die Antworten, die ein Code-Tausch oder ein Refresh erhalten kann, und was jeweils zu tun ist.

POST <auth>/oauth/token meldet Fehler in zwei Formaten. Lesen Sie den Status und behandeln Sie beide Formen.

Fehler nach RFC 6749

HTTP 400 mit einem Inhalt wie:

{ "error": "invalid_grant", "error_description": "Authorization code has expired" }

Das sind Probleme beim Code-Tausch: ein abgelaufener, bereits verwendeter oder unbekannter Code, ein falscher code_verifier oder eine falsche redirect_uri (invalid_grant); ein fehlender Parameter (invalid_request); ein inzwischen gesperrter Benutzer (access_denied).

Die eigenen Fehler des Auth-Servers

Ein Inhalt wie {"code": 400, "error_code": "...", "msg": "..."}, solange Sie keinen Header X-Supabase-Api-Version senden (mit ihm wird daraus {"code": "<error_code>", "message": "..."}):

  • Die Client-Authentifizierung schlägt fehl: 400, error_code invalid_credentials. Ein falsches oder erneuertes Secret, oder das Secret nicht per HTTP Basic gesendet.
  • Ein Refresh-Token, das nicht mehr funktioniert: 400, error_code refresh_token_not_found (die Sitzung wurde beendet), refresh_token_already_used (nach 10 Sekunden erneut verwendet; die Sitzung ist jetzt beendet), user_banned, session_not_found oder session_expired. Behandeln Sie jeden davon als Abmeldung.
  • Das Token wurde verweigert: 403, error_code unknown, mit dem Grund in msg. Diese kommen beim Code-Tausch und beim Refresh gleichermaßen.

Die 403-Antworten, die ein Frontend erhalten kann

msgWannWas tun
The frontend is for members onlyMitgliedschaft verpflichtend, und der Benutzer ist derzeit kein Mitglied.Verwerfen Sie die Sitzung und schicken Sie den Benutzer erneut durch die Anmeldung.
OAuth tokens are issued for the scope openid onlyDer Scope der Autorisierungsanfrage war nicht genau openid (auch gar keiner).Korrigieren Sie die Autorisierungsanfrage; es ist ein Fehler in Ihrem Frontend.
The OAuth client is not an internal web frontendDas Frontend Ihres Clients ist kein internes Frontend mit dem App-Typ „Web-App“.Verwerfen Sie die Sitzung; bitten Sie die Organisation, die Karte „Anmeldung“ des Frontends zu prüfen.
The OAuth client does not serve the frontend user's tenantIhre Client-ID gehört nicht (mehr) zu einem Frontend der Organisation des Benutzers, etwa nachdem der Client neu erstellt wurde.Vergleichen Sie die ausgerollte Client-ID und das Secret mit der Karte „Anmeldung“ und schicken Sie den Benutzer dann erneut durch die Anmeldung.
The access token could not be issuedDas Token konnte nicht berechnet werden (ein interner Fehler).Als Abmeldung behandeln; später erneut versuchen und appsolut den Zeitpunkt melden, wenn es sich wiederholt.
Jede andere msgKonto- oder Sitzungszustände, die keine reguläre Anmeldung erzeugt.Als Abmeldung behandeln und appsolut die msg und den Zeitpunkt melden.