Ich möchte einen zentralen Authentifizierungs-/Autorisierungsserver mit Spring Security einrichten, von dem ich das JWT-Token abrufen kann, das ich dann für den Zugriff auf eingeschränkte Ressourcen auf einem anderen Spring Security-REST-Server verwenden kann.Spring Security JWT und Oauth2
Hier ist mein Flow:
1) HTML JS/Handy usw. Client authentifiziert auf Auth-Server das JWT Token 2) Client sendet dieses Token in HTTP-Header auf REST-Server Zugang zu gesicherten Ressourcen
zu erhaltenIch dachte, JWT würde am besten für dieses Szenario passen, da es alle relevanten Daten enthalten kann und REST-Server vollständig zustandslos sein und das Token einfach dekodieren kann, um alle notwendigen Daten (Rolle, ClientID, E-Mail ...) auf dem REST-Server zu erhalten.
Ist Oauth2 die richtige Wahl dafür und wenn ja könnte jemand mich bitte auf die richtige Richtung zeigen? Wenn JWT nicht die richtige Wette ist, bin ich offen für andere Lösungen :) Ich sollte erwähnen, dass es in meinem Fall auch möglich ist, Client-Informationen aus der Datenbank auch auf REST-Server zu laden, aber es sollte nicht für die Authentifizierung des Benutzers verantwortlich sein (was bedeutet, keine Benutzername/Passwort-Prüfung, nur die Token-Decodierung/Validierung ...)
Wie schwierig ist es UAA in soziale Netzwerk integriert und AJAX aktiviert SSO. Ich stelle mir vor, ich würde diese Merkmale in die UAA selbst aufnehmen.Wahrscheinlich ist oauth2 nicht für SSO gedacht, aber unterstützt es den Single Log Out Mechanismus? – beku8
Nicht zu schwierig. Aber ist es das, was du brauchst? Sie möchten ein soziales Netzwerk für sso verwenden und Ihre eigenen Tokens ausgeben? Wenn dies der Fall ist, müssen Sie nur den Authentifizierungsprozess ändern. OAuth2 wurde nicht speziell für sso entwickelt, aber viele Leute benutzen es so - deshalb hat Facebook zum Beispiel/me (UAA selbst macht/user_info zum selben Zweck verfügbar). –
Würde es einen Vorteil geben, einen benutzerdefinierten Code mit Federsicherheit + Feder oauth2 + Feder jwt zu schreiben, anstatt uaa zu verwenden? – user1595858