@@ -46,7 +46,7 @@ public HttpHeaders convert(T authorizationGrantRequest) {
4646 Assert .notNull (authorizationGrantRequest , "authorizationGrantRequest cannot be null" );
4747 ClientRegistration clientRegistration = authorizationGrantRequest .getClientRegistration ();
4848
49- URI uri = getUri ( authorizationGrantRequest );
49+ URI tokenUri = getTokenUri ( clientRegistration );
5050
5151 MultiValueMap <String , String > parameters =
5252 getParameters (authorizationGrantRequest , clientRegistration );
@@ -61,7 +61,7 @@ public HttpHeaders convert(T authorizationGrantRequest) {
6161 httpHeaders .setContentType (
6262 MediaType .valueOf (MediaType .APPLICATION_FORM_URLENCODED_VALUE + ";charset=UTF-8" ));
6363
64- String dPoPProofWithNonce = buildDPoPProof (uri , parameters , clientRegistration );
64+ String dPoPProofWithNonce = buildDPoPProof (tokenUri , parameters , clientRegistration );
6565 if (dPoPProofWithNonce != null ) {
6666 httpHeaders .set ("DPoP" , dPoPProofWithNonce );
6767 }
@@ -83,40 +83,36 @@ private MultiValueMap<String, String> getParameters(
8383 return parameters ;
8484 }
8585
86- private URI getUri (OAuth2ClientCredentialsGrantRequest clientCredentialsGrantRequest ) {
87- return UriComponentsBuilder .fromUriString (
88- clientCredentialsGrantRequest
89- .getClientRegistration ()
90- .getProviderDetails ()
91- .getTokenUri ())
86+ private URI getTokenUri (ClientRegistration clientRegistration ) {
87+ return UriComponentsBuilder .fromUriString (clientRegistration .getProviderDetails ().getTokenUri ())
9288 .build ()
9389 .toUri ();
9490 }
9591
9692 private String buildDPoPProof (
97- URI uri , MultiValueMap <String , String > parameters , ClientRegistration clientRegistration ) {
93+ URI tokenUri , MultiValueMap <String , String > parameters , ClientRegistration clientRegistration ) {
9894
9995 try {
10096
10197 String dPoPProofWithoutNonce =
10298 dPoPProofBuilder .createDPoPProof (
103- HttpMethod .POST .name (), uri .toString (), null , clientRegistration );
99+ HttpMethod .POST .name (), tokenUri .toString (), null , clientRegistration );
104100
105101 HttpHeaders httpHeaders = new HttpHeaders ();
106102 httpHeaders .set ("Content-Type" , "application/x-www-form-urlencoded" );
107103 httpHeaders .set ("DPoP" , dPoPProofWithoutNonce );
108104
109105 HttpEntity <?> httpEntity = new HttpEntity <>(parameters , httpHeaders );
110106
111- restOperations .postForEntity (uri , httpEntity , String .class );
107+ restOperations .postForEntity (tokenUri , httpEntity , String .class );
112108 } catch (HttpClientErrorException ex ) {
113109 if (ex .getStatusCode () == HttpStatus .BAD_REQUEST
114110 && ex .getResponseHeaders () != null
115111 && ex .getResponseBodyAsString ().contains ("use_dpop_nonce" )) {
116112 String nonce = ex .getResponseHeaders ().getFirst ("DPoP-Nonce" );
117113 try {
118114 return dPoPProofBuilder .createDPoPProof (
119- HttpMethod .POST .name (), uri .toString (), nonce , clientRegistration );
115+ HttpMethod .POST .name (), tokenUri .toString (), nonce , clientRegistration );
120116 } catch (JOSEException e ) {
121117 throw new OAuth2AuthorizationException (new OAuth2Error ("Failed to create DPoP proof" ), e );
122118 }
0 commit comments