Wenn Sie einen vertrauenswürdigen Server haben (Node, .NET, PHP usw.), führen Sie den Token-Austausch dort aus, damit das Client-Geheimnis nie den Browser erreicht.
Das passt zu eigenen OAuth-Code-Integrationen. React-SDK und Plain-JS-Pfade (Popup / Script-Integration) sind getrennt — siehe Intastellar Sign-In — React-SDK und Plain JavaScript.
Ablauf
- Browser schließt den Redirect-Flow ab und landet mit
codeundstateauf Ihrem Callback. - Ihre Callback-Route prüft
state, ruft dann Ihr Backend auf (oder verarbeitet serverseitig in derselben Anfrage), um den Code zu tauschen. - Backend
POSTanTOKEN_ENDPOINTmitgrant_type=authorization_code,code,redirect_uri,client_idundclient_secret. - Backend legt eine Sitzung für den Nutzer an (Cookie setzen, Tokens serverseitig speichern).
- Browser wird in die App weitergeleitet, nur mit Ihrem Sitzungs-Cookie.
Beispiel (konzeptionell)
POST TOKEN_ENDPOINT
Content-Type: application/x-www-form-urlencoded
grant_type=authorization_code
&code=AUTHORIZATION_CODE
&redirect_uri=https%3A%2F%2Fapp.example.com%2Fauth%2Fcallback
&client_id=YOUR_CLIENT_ID
&client_secret=YOUR_CLIENT_SECRETPKCE-Parameter ergänzen, wenn dieser Client hybrid ist oder der Authorization-Schritt PKCE genutzt hat.
Geheimnis-Verwahrung
client_secretaus Umgebungsvariablen oder Secret-Manager laden.- Bei Exposition rotieren; getrennte Credentials pro Umgebung.
Weiter
Last updated