diff --git a/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImpl.java b/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImpl.java index 11dc1340220e413f32d8af2e7d6e28dfa322dd57..4ff0343363a9f903ca82b0c976d34ed0d357d24e 100644 --- a/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImpl.java +++ b/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImpl.java @@ -97,7 +97,7 @@ public class RequestInfoImpl implements IRequestInfo { } return authHeader; } else { - return "Bearer " + this.serviceAccountJwtClient.getIdToken(tenantInfo.getName()); + return this.serviceAccountJwtClient.getIdToken(tenantInfo.getName()); } } } diff --git a/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImpl.java b/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImpl.java index 12ff2ac7990717e41ff96496bc48e65accdcb055..ab4a559577720d6c9d27181fb6c0a2ff134dd495 100644 --- a/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImpl.java +++ b/provider/indexer-azure/src/main/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImpl.java @@ -14,6 +14,7 @@ package org.opengroup.osdu.indexer.azure.util; +import com.google.common.base.Strings; import org.apache.http.HttpStatus; import org.opengroup.osdu.azure.util.AzureServicePrincipleTokenService; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; @@ -31,6 +32,7 @@ import javax.inject.Inject; @Component @RequestScope public class ServiceAccountJwtClientImpl implements IServiceAccountJwtClient { + private final String BEARER = "Bearer"; @Inject private ITenantFactory tenantInfoServiceProvider; @@ -55,6 +57,10 @@ public class ServiceAccountJwtClientImpl implements IServiceAccountJwtClient { this.dpsHeaders.put(DpsHeaders.USER_EMAIL, tenant.getServiceAccount()); - return this.tokenService.getAuthorizationToken(); + String token = this.tokenService.getAuthorizationToken(); + if(!Strings.isNullOrEmpty(token) && !token.startsWith(BEARER)) { + token = BEARER + " " + token; + } + return token; } } diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java index 8b2c66becc92c96dcd12825a5347af9cc39acdfa..b9abb87b68e61f9c3078e25f4abec6dfde23e042 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/RequestInfoImplTest.java @@ -24,7 +24,7 @@ public class RequestInfoImplTest { private static String deploymentEnvironmentValue = "LOCAL"; private static String deploymentEnvironmentValueCloud = "CLOUD"; private static String tenant = "tenant1"; - private static String bearerToken = "bearerToken"; + private static String bearerToken = "Bearer bearerToken"; private static String expectedToken = "Bearer bearerToken"; private static String partitionId = "opendes"; private static String owner = "owner"; diff --git a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImplTest.java b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImplTest.java index f55c96dc2a34306fc6e0d4beb4cbed79513263f6..9478a58bb08390b0572a711f50ac56006139b25b 100644 --- a/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImplTest.java +++ b/provider/indexer-azure/src/test/java/org/opengroup/osdu/indexer/azure/util/ServiceAccountJwtClientImplTest.java @@ -26,7 +26,7 @@ import static org.mockito.Mockito.*; public class ServiceAccountJwtClientImplTest { private String partitionId="opendes"; - private static String authorizationToken = "authorizationToken"; + private static String authorizationToken = "Bearer authorizationToken"; @Mock private ITenantFactory tenantInfoServiceProvider; diff --git a/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/RequestInfoImpl.java b/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/RequestInfoImpl.java index 5f52f26ee0f01d225c64a97ff8bd608dcc2d2b8b..3e7bd6c60ba3395a3cc8277751972d142b299e18 100644 --- a/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/RequestInfoImpl.java +++ b/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/RequestInfoImpl.java @@ -115,7 +115,7 @@ public class RequestInfoImpl implements IRequestInfo { } return "Bearer " + authHeader; } else { - return "Bearer " + this.serviceAccountJwtClient.getIdToken(tenantInfo.getName()); + return this.serviceAccountJwtClient.getIdToken(tenantInfo.getName()); } } diff --git a/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/ServiceAccountJwtClientImpl.java b/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/ServiceAccountJwtClientImpl.java index 18d3b7f5011408cdf49b7e9e9553be6a26340aa4..6a6fbfc4662bf23121463dbdb654d3f5fe210aee 100644 --- a/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/ServiceAccountJwtClientImpl.java +++ b/provider/indexer-ibm/src/main/java/org/opengroup/osdu/indexer/ibm/util/ServiceAccountJwtClientImpl.java @@ -4,6 +4,7 @@ package org.opengroup.osdu.indexer.ibm.util; import javax.inject.Inject; +import com.google.common.base.Strings; import org.apache.http.HttpStatus; import org.opengroup.osdu.core.common.logging.JaxRsDpsLog; import org.opengroup.osdu.core.common.model.http.AppException; @@ -18,6 +19,7 @@ import org.springframework.web.context.annotation.RequestScope; @Component @RequestScope public class ServiceAccountJwtClientImpl implements IServiceAccountJwtClient { + private final String BEARER = "Bearer"; @Inject private ITenantFactory tenantInfoServiceProvider; @@ -65,6 +67,9 @@ public class ServiceAccountJwtClientImpl implements IServiceAccountJwtClient { throw new AppException(HttpStatus.SC_INTERNAL_SERVER_ERROR, "Persistence error", "Error generating token", e); } + if(!Strings.isNullOrEmpty(ACCESS_TOKEN) && !ACCESS_TOKEN.startsWith(BEARER)) { + ACCESS_TOKEN = BEARER + " " + ACCESS_TOKEN; + } return ACCESS_TOKEN; }