Ich benutze Spring mit oauth2, die ein JWT-Token freigeben. Ich habe einen funktionierenden Prototyp, auf dem ich die Annotation @ PreAuthorize für meine Zwecke verwenden kann.Sicherheitsentscheidung von einem JWT in einem Federhalteregler
// public class Foo { private String md5Hash; } with getters, setters, etc.
@RestController
@RequestMapping("/foo")
public class WebController {
@PreAuthorize("hasAnyAuthority('client','module')")
@RequestMapping(method = RequestMethod.GET)
public String readFoo(Foo foo) {
String username = /* extract jwt info */
if (verify(username, foo.getMd5Hash()))
return "you CAN'T";
return "you can";
}
boolean verify(String user, String md5) {...}
Im JWT-Token ist der Benutzername definiert. Wie kann ich den Benutzernamen von hier lesen?
Außerdem, wie Sie sehen können, habe ich eine andere Sicherheitsentscheidung zu treffen ... ist das ein guter Weg oder gibt es eine Spring-Funktion, die ich nicht kenne?
Es funktioniert und alles ist klar, danke! –