Spring Security OAuth 2.0 - Client-Geheimnis, das für die Erteilung des Autorisierungscodes immer erforderlich ist
Anforderungen nach einem Token unter Verwendung des Berechtigungscodes müssen laut Spezifikation nicht authentifiziert werden, solange dasclient_id
ist in der Anfrage enthaltenun dasclient_id
ist das gleiche, mit dem der Code generiert wurde. Bei der Implementierung von Spring Security OAuth 2.0 scheint jedoch die grundlegende Authentifizierung auf dem @ immer erforderlich zu sei/oauth/token
Endpunkt, auch wenn dem Client nie ein Geheimnis zugewiesen wurde.
s sieht so aus, als gäbe es Unterstützung dafür, dass Kunden aufgrund desisSecretRequired()
Methode in derClientDetails
Schnittstelle. Was muss ich tun, damit Clients ohne Geheimnis am @ authentifiziert werden könne/oauth/token
URL?
4.1.3. Zugriffs-Token-Anforderung
Der Client sendet eine Anforderung an den Token-Endpunkt, indem er das @ sende
folgende Parameter mit dem "application / x-www-form-urlencoded"
format gemäß Anhang B mit einer Zeichencodierung von UTF-8 im HTTP
request entity-body:
grant_type ERFORDERLICH. Der Wert MUSS auf "authorized_code" gesetzt sein.
code ERFORDERLICH. Der vom Autorisierungsserver empfangene Autorisierungscode.
redirect_uri ERFORDERLICH, wenn der Parameter "redirect_uri" in der Autorisierungsanforderung enthalten war, wie in Abschnitt 4.1.1 beschrieben, und ihre Werte MÜSSEN identisch sein.
client_id ERFORDERLICH, wenn sich der Client nicht wie in Abschnitt 3.2.1 beschrieben beim Autorisierungsserver authentifiziert.
Wenn der Client-Typ vertraulich ist oder dem Client Client-Anmeldeinformationen erteilt wurden (oder andere Authentifizierungsanforderungen zugewiesen wurden), wird das
client MUSS sich wie beschrieben beim Autorisierungsserver authentifizieren
in Abschnitt 3.2.1.