|
|
@ -39,6 +39,7 @@ import org.wso2.carbon.identity.jwt.client.extension.JWTClient;
|
|
|
|
import org.wso2.carbon.identity.jwt.client.extension.dto.AccessTokenInfo;
|
|
|
|
import org.wso2.carbon.identity.jwt.client.extension.dto.AccessTokenInfo;
|
|
|
|
import org.wso2.carbon.identity.jwt.client.extension.exception.JWTClientException;
|
|
|
|
import org.wso2.carbon.identity.jwt.client.extension.exception.JWTClientException;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
|
|
|
|
|
|
|
@ -58,13 +59,15 @@ public class OAuthRequestInterceptor implements RequestInterceptor {
|
|
|
|
private OAuthApplication oAuthApplication;
|
|
|
|
private OAuthApplication oAuthApplication;
|
|
|
|
private static Map<String, AccessTokenInfo> tenantUserTokenMap = new ConcurrentHashMap<>();
|
|
|
|
private static Map<String, AccessTokenInfo> tenantUserTokenMap = new ConcurrentHashMap<>();
|
|
|
|
private static final Log log = LogFactory.getLog(OAuthRequestInterceptor.class);
|
|
|
|
private static final Log log = LogFactory.getLog(OAuthRequestInterceptor.class);
|
|
|
|
|
|
|
|
private String username;
|
|
|
|
|
|
|
|
private String password;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Creates an interceptor that authenticates all requests.
|
|
|
|
* Creates an interceptor that authenticates all requests.
|
|
|
|
*/
|
|
|
|
*/
|
|
|
|
public OAuthRequestInterceptor() {
|
|
|
|
public OAuthRequestInterceptor() {
|
|
|
|
String username = APIMConfigReader.getInstance().getConfig().getUsername();
|
|
|
|
username = APIMConfigReader.getInstance().getConfig().getUsername();
|
|
|
|
String password = APIMConfigReader.getInstance().getConfig().getPassword();
|
|
|
|
password = APIMConfigReader.getInstance().getConfig().getPassword();
|
|
|
|
dcrClient = Feign.builder().client(new OkHttpClient(Utils.getSSLClient())).logger(new Slf4jLogger())
|
|
|
|
dcrClient = Feign.builder().client(new OkHttpClient(Utils.getSSLClient())).logger(new Slf4jLogger())
|
|
|
|
.logLevel(Logger.Level.FULL).requestInterceptor(new BasicAuthRequestInterceptor(username, password))
|
|
|
|
.logLevel(Logger.Level.FULL).requestInterceptor(new BasicAuthRequestInterceptor(username, password))
|
|
|
|
.contract(new JAXRSContract()).encoder(new GsonEncoder()).decoder(new GsonDecoder())
|
|
|
|
.contract(new JAXRSContract()).encoder(new GsonEncoder()).decoder(new GsonDecoder())
|
|
|
@ -73,6 +76,8 @@ public class OAuthRequestInterceptor implements RequestInterceptor {
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public OAuthRequestInterceptor(String username, String password) {
|
|
|
|
public OAuthRequestInterceptor(String username, String password) {
|
|
|
|
|
|
|
|
this.username = username;
|
|
|
|
|
|
|
|
this.password = password;
|
|
|
|
dcrClient = Feign.builder().client(new OkHttpClient(Utils.getSSLClient())).logger(new Slf4jLogger())
|
|
|
|
dcrClient = Feign.builder().client(new OkHttpClient(Utils.getSSLClient())).logger(new Slf4jLogger())
|
|
|
|
.logLevel(Logger.Level.FULL).requestInterceptor(new BasicAuthRequestInterceptor(username, password))
|
|
|
|
.logLevel(Logger.Level.FULL).requestInterceptor(new BasicAuthRequestInterceptor(username, password))
|
|
|
|
.contract(new JAXRSContract()).encoder(new GsonEncoder()).decoder(new GsonDecoder())
|
|
|
|
.contract(new JAXRSContract()).encoder(new GsonEncoder()).decoder(new GsonDecoder())
|
|
|
@ -88,7 +93,7 @@ public class OAuthRequestInterceptor implements RequestInterceptor {
|
|
|
|
clientProfile.setClientName(APPLICATION_NAME);
|
|
|
|
clientProfile.setClientName(APPLICATION_NAME);
|
|
|
|
clientProfile.setCallbackUrl("");
|
|
|
|
clientProfile.setCallbackUrl("");
|
|
|
|
clientProfile.setGrantType(GRANT_TYPES);
|
|
|
|
clientProfile.setGrantType(GRANT_TYPES);
|
|
|
|
clientProfile.setOwner(APIMConfigReader.getInstance().getConfig().getUsername());
|
|
|
|
clientProfile.setOwner(username);
|
|
|
|
clientProfile.setSaasApp(true);
|
|
|
|
clientProfile.setSaasApp(true);
|
|
|
|
oAuthApplication = dcrClient.register(clientProfile);
|
|
|
|
oAuthApplication = dcrClient.register(clientProfile);
|
|
|
|
}
|
|
|
|
}
|
|
|
|