Konfigurieren des Ressourcenservers in Spring Security, damit zusätzliche Informationen im JWT-Token verwendet werden können

9

Ich habe einen oauth2 jwt-Token-Server konfiguriert, um zusätzliche Informationen über die Benutzerberechtigungen zu setzen.

%Vor%

Ich bin mir nicht sicher, wie ich meinen Ressourcenserver konfigurieren soll, um die vom oauth2-Server festgelegten Benutzerberechtigungen zu extrahieren und diese Autorität für @Secured-annotierte Controller im Spring Security-Framework zu verwenden.

Die Konfiguration meines Auth-Servers sieht folgendermaßen aus:

%Vor%

Und meine Resource Server-Konfiguration sieht so aus:

%Vor%

Mein Testfall versagt kläglich:

{"error": "invalid_token", "error_description": "Kann das Zugriffstoken nicht in JSON konvertieren"}

Wie bekomme ich das Authentication-Objekt aus dem JWT? Wie authentifiziere ich den Client mit den Anmeldeinformationen des Clients? Wie verwende ich @Secured Annotation auf meinen Ressourcencontrollern?

Welcher Code wird auf der Seite des Ressourcenservers verwendet, um das Token der Reihe nach zu decodieren Client-Anmeldeinformationen extrahieren und welcher Code wird zur Benutzerrolle überprüft?

Bitte helft mir, da ich schon 2 Tage damit verbracht habe, meinen Kopf scheinbar darauf zu schlagen einfache Aufgabe.

Hinweis: Ich erhalte das Token vom Auth-Server als: {access_token = b5d89a13-3c8b-4bda-b0f2-a6e9d7b7a285, token_type = bearer, refresh_token = 43777224-b6f2-44d7-bf36-4e1934d32cbb, expires_in = 43199, scope = read schreiben vertrauen, behörden = [{berechtigung = ROLE_USER}, {berechtigung = ROLE_ADMIN}]}

Bitte erläutern Sie die Konzepte und weisen Sie darauf hin, dass in meiner Konfiguration etwas fehlt. Ich muss die Best Practices bei der Konfiguration meines Ressourcen- und Authentifizierungsservers kennen.

    
aksinghdce 04.05.2016, 11:50
quelle

0 Antworten