0

Ich implementiere die Autorisierungscode Fluss + JWT.Mit "spring-security-oauth2" können benutzerdefinierte Parameter in der "Authorization Phase" von OAuth2 übergeben werden?

Ich möchte wissen, ob und wie es möglich sein kann, zusätzliche benutzerdefinierte Parameter zur Authorization Phase des Flusses hinzuzufügen.

Im Wesentlichen, ich suche folgendes zu tun:

  1. Wenn Umleiten des Benutzers zu dem /oauth/authorize Endpunkt würde ich in einem zusätzlichen Parameter zu Pass wie (customPar betonte Text messer) in der

GET uRL http://.../oauth/authorize? ... customParameter = [VALUE], so dass VALUE ist dynamisch

  1. Ich brauche wird VALUE abzurufen, wenn die JWT erstellen, bevölkern die JWT mit diesem Wert

Ist das möglich ? Wie kann ich implementieren?

Antwort

0

Meine Idee ist, Ihre Parameter während AuthorizationRequest in benutzerdefinierten OAuth2RequestFactory bei createAuthorizationRequest Methode hinzufügen wie here:

@Override 
public AuthorizationRequest createAuthorizationRequest(Map<String, String> authorizationParameters) { 
    //here 
    authorizationParameters.put("your", "parameter"); 
    // 
    AuthorizationRequest request = super.createAuthorizationRequest(authorizationParameters); 
    if (securityContextAccessor.isUser()) { 
     request.setAuthorities(securityContextAccessor.getAuthorities()); 
    } 
     return request; 
} 

Sie Anfrage füllen können und anfordern oder Session in Ihrer benutzerdefinierten OAuth2RequestFactory injizieren und es abrufen

Verwandte Themen