[FEATURE REQ] AadResourceServerConfiguration should support proxy
Is your feature request related to a problem? Please describe.
At the moment it's not possible to easily configure a proxy for the calls the calls to login.microsoft.com. The only way is to fully replace the whole JwtDecoder together with the RestOperation having the proxy configured.
Describe the solution you'd like
Please setup an easy way to configure a proxy for all calls done by the azure-sdk to azure.
Describe alternatives you've considered
The current alternative is to duplicate most of the code in AadResourceServerConfiguration and setup an extra RestTemplate for the JwtDecoder:
@Bean
RestTemplate aadJwtRestTemplate() {
SimpleClientHttpRequestFactory factory = new SimpleClientHttpRequestFactory();
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("myproxyhost", 8080);
factory.setProxy(proxy);
return new RestTemplate(factory);
}
@Bean
JwtDecoder jwtDecoder(AadAuthenticationProperties aadAuthenticationProperties, RestTemplate aadJwtRestTemplate) {
AadAuthorizationServerEndpoints identityEndpoints = new AadAuthorizationServerEndpoints(
aadAuthenticationProperties.getProfile().getEnvironment().getActiveDirectoryEndpoint(), aadAuthenticationProperties.getProfile().getTenantId());
NimbusJwtDecoder nimbusJwtDecoder = NimbusJwtDecoder
.withJwkSetUri(identityEndpoints.getJwkSetEndpoint())
.restOperations(aadJwtRestTemplate) // <--- this is needed, as the current implementation has a static method call to createRestTemplate
.build();
List<OAuth2TokenValidator<Jwt>> validators = createDefaultValidator(aadAuthenticationProperties);
nimbusJwtDecoder.setJwtValidator(new DelegatingOAuth2TokenValidator<>(validators));
return nimbusJwtDecoder;
}
// ... and more to copy & paste
Thanks for filing this issue @dkellenb
@saragluna could you find an owner for this?
We will close this issue as it has been open for a while. If you have any further questions or need assistance, please feel free to reopen it. Thank you!
Issue is still present (version 5.23.0). @Netyyyy : Please reconsider.