|
|
|
@ -1,13 +1,11 @@
|
|
|
|
|
package org.gcube.common.calls.interceptors;
|
|
|
|
|
|
|
|
|
|
import org.gcube.common.authorization.library.provider.AccessTokenProvider;
|
|
|
|
|
import org.gcube.common.authorization.library.provider.SecurityTokenProvider;
|
|
|
|
|
import org.gcube.common.authorization.library.provider.UmaJWTProvider;
|
|
|
|
|
import org.gcube.common.calls.Call;
|
|
|
|
|
import org.gcube.common.calls.Interceptor;
|
|
|
|
|
import org.gcube.common.calls.Request;
|
|
|
|
|
import org.gcube.common.calls.Response;
|
|
|
|
|
import org.json.simple.JSONObject;
|
|
|
|
|
import org.json.simple.parser.JSONParser;
|
|
|
|
|
import org.slf4j.Logger;
|
|
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
|
|
|
|
|
|
@ -21,14 +19,11 @@ public class AuthorizationInterceptor implements Interceptor {
|
|
|
|
|
@Override
|
|
|
|
|
public void handleRequest(Request request, Call call) {
|
|
|
|
|
String token = SecurityTokenProvider.instance.get();
|
|
|
|
|
String umaToken = UmaJWTProvider.instance.get();
|
|
|
|
|
String accessToken = AccessTokenProvider.instance.get();
|
|
|
|
|
|
|
|
|
|
if (umaToken!=null) {
|
|
|
|
|
if (accessToken!=null) {
|
|
|
|
|
try {
|
|
|
|
|
JSONParser parser = new JSONParser();
|
|
|
|
|
JSONObject jsonObject = (JSONObject) parser.parse(umaToken);
|
|
|
|
|
String accesToken = (String) jsonObject.get("access_token");
|
|
|
|
|
request.addHeader(uma_token_header, "Bearer "+accesToken);
|
|
|
|
|
request.addHeader(uma_token_header, "Bearer "+accessToken);
|
|
|
|
|
logger.trace("uma token set");
|
|
|
|
|
}catch (Exception e) {
|
|
|
|
|
logger.error("error parsing uma token",e);
|
|
|
|
|