EntandoDefaultOAuth2RequestAuthenticator.java
package org.entando.kubernetes.service.digitalexchange.entandocore;
import org.springframework.http.client.ClientHttpRequest;
import org.springframework.security.oauth2.client.OAuth2ClientContext;
import org.springframework.security.oauth2.client.OAuth2RequestAuthenticator;
import org.springframework.security.oauth2.client.http.AccessTokenRequiredException;
import org.springframework.security.oauth2.client.resource.OAuth2ProtectedResourceDetails;
import org.springframework.security.oauth2.common.OAuth2AccessToken;
public class EntandoDefaultOAuth2RequestAuthenticator implements OAuth2RequestAuthenticator {
public void authenticate(final OAuth2ProtectedResourceDetails resource,
final OAuth2ClientContext clientContext,
final ClientHttpRequest request) {
final OAuth2AccessToken accessToken = clientContext.getAccessToken();
if (accessToken == null) {
throw new AccessTokenRequiredException(resource);
} else {
request.getHeaders().set("Authorization", String.format("Bearer %s", accessToken.getValue()));
}
}
}