diff --git a/pom.xml b/pom.xml
index bb5b63e2a350888feb12f99cddea1da32574a8ad..342e9aab35c16b4e0754bf7be8530c3f9cab8bbb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -56,11 +56,6 @@
                 <artifactId>os-core-common</artifactId>
                 <version>0.0.20</version>
             </dependency>
-            <dependency>
-                <groupId>org.opengroup.osdu</groupId>
-                <artifactId>core-lib-gcp</artifactId>
-                <version>0.1.21</version>
-            </dependency>
         </dependencies>
     </dependencyManagement>
 
diff --git a/provider/register-gcp/pom.xml b/provider/register-gcp/pom.xml
index dd84b8bdac296738f22de48828609453dbe0d6f7..92abcc3ae67572759e355fce1b3d59b5cfdbaee2 100644
--- a/provider/register-gcp/pom.xml
+++ b/provider/register-gcp/pom.xml
@@ -37,6 +37,7 @@
     <dependency>
       <groupId>org.opengroup.osdu</groupId>
       <artifactId>core-lib-gcp</artifactId>
+      <version>0.1.21</version>
     </dependency>
 
     <dependency>
diff --git a/provider/register-gcp/src/main/appengine/app.yaml b/provider/register-gcp/src/main/appengine/app.yaml
index be8764732b706d1b71887fd56d8041ef3c242596..f57bdeae5570a869f733aee8aa2b5ac0b7647d1c 100644
--- a/provider/register-gcp/src/main/appengine/app.yaml
+++ b/provider/register-gcp/src/main/appengine/app.yaml
@@ -38,6 +38,6 @@ env_variables:
   JETTY_MODULES_ENABLE: 'gzip'
   JAVA_OPTS: -Xms2048m -Xmx3072m
   SPRING_PROFILES_ACTIVE: 'dev'
-  GOOGLE_AUDIENCES: "GOOGLE-AUDIENCES"
+  INTEGRATION_TEST_AUDIENCES: "GOOGLE-AUDIENCES"
   SUBSCRIBER_SECRET: "SUBSCRIBER-SECRET"
   SUBSCRIBER_PRIVATE_KEY_ID: "SUBSCRIBER-PRIVATE-KEY-ID"
\ No newline at end of file
diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/DatastoreAccess.java b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/DatastoreAccess.java
index dcc3ffb5a01b3069cca8b5f0bebdc7f7b42dc94e..ffba276139ddd7a8a9b32a255cf0e5261fc195f8 100644
--- a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/DatastoreAccess.java
+++ b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/subscriber/DatastoreAccess.java
@@ -20,9 +20,9 @@ import com.google.cloud.datastore.*;
 import org.opengroup.osdu.core.common.model.http.AppException;
 import org.opengroup.osdu.core.common.model.tenant.TenantInfo;
 import org.opengroup.osdu.register.provider.gcp.ddms.datastore.DatastoreMultiTenantAccess;
+import org.opengroup.osdu.register.provider.gcp.util.GcpAppServiceConfig;
 import org.opengroup.osdu.register.subscriber.model.Secret;
 import org.opengroup.osdu.register.subscriber.model.Subscription;
-import org.opengroup.osdu.register.utils.AppServiceConfig;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 
@@ -42,7 +42,7 @@ public class DatastoreAccess implements IDatastoreAccess {
     @Autowired
     private ModelEntityHelper modelEntityHelper;
     @Autowired
-    private AppServiceConfig config;
+    private GcpAppServiceConfig config;
 
     private static final String NAMESPACE = "DE";
     private static final String KIND = "SUBSCRIPTION";
diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GcpAppServiceConfig.java b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GcpAppServiceConfig.java
new file mode 100644
index 0000000000000000000000000000000000000000..1c91de2bb4dc7fea518153032892b3bce72ff589
--- /dev/null
+++ b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GcpAppServiceConfig.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright 2017-2020, Schlumberger
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.opengroup.osdu.register.provider.gcp.util;
+
+import org.opengroup.osdu.register.utils.AppServiceConfig;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.context.annotation.Primary;
+import org.springframework.stereotype.Component;
+
+@Component
+@Primary
+public class GcpAppServiceConfig extends AppServiceConfig {
+
+    @Value("${GOOGLE_CLOUD_PROJECT}")
+    private String googleCloudProject;
+    @Value("${SERVICE_IDENTITY}")
+    private String serviceIdentity;
+
+    public String getGoogleCloudProject() {
+        return googleCloudProject;
+    }
+
+    public String getServiceAccountIdentity() {
+        return String.format("%s@%s.iam.gserviceaccount.com", serviceIdentity, googleCloudProject);
+    }
+}
\ No newline at end of file
diff --git a/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..471b48541fbbddd402c8870cfebf19615fcd089d
--- /dev/null
+++ b/provider/register-gcp/src/main/java/org/opengroup/osdu/register/provider/gcp/util/GoogleServiceAccountImpl.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright 2017-2020, Schlumberger
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.opengroup.osdu.register.provider.gcp.util;
+
+import lombok.SneakyThrows;
+import org.apache.http.impl.client.HttpClients;
+import org.opengroup.osdu.core.gcp.GoogleIdToken.IGoogleIdTokenFactory;
+import org.opengroup.osdu.register.utils.IGoogleServiceAccount;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+@Component
+public class GoogleServiceAccountImpl implements IGoogleServiceAccount {
+
+    @Autowired
+    private IGoogleIdTokenFactory googleIdTokenFactory;
+
+    @SneakyThrows
+    @Override
+    public String getIdToken(String keyString, String audience) {
+        return this.googleIdTokenFactory.getGoogleIdToken(keyString, audience, HttpClients.createDefault());
+    }
+
+    @SneakyThrows
+    @Override
+    public String getPrivateKeyId(String keyString) {
+        return this.googleIdTokenFactory.getPrivateKeyId(keyString);
+    }
+}
\ No newline at end of file
diff --git a/provider/register-gcp/src/main/resources/application-dev.properties b/provider/register-gcp/src/main/resources/application-dev.properties
index 63d399a1953f4c5a96568f2c2cb214a5c919bb64..2747cdcba70a55a30a3047be2eef68d8647058b9 100644
--- a/provider/register-gcp/src/main/resources/application-dev.properties
+++ b/provider/register-gcp/src/main/resources/application-dev.properties
@@ -5,7 +5,7 @@ STORAGE_API=https://os-storage-dot-opendes.appspot.com/api/storage/v2
 RECORDS_CHANGE_PUBSUB_ENDPOINT=https://os-notification-dot-opendes.appspot.com/push-handlers/records-changed
 GOOGLE_CLOUD_PROJECT=opendes
 GCLOUD_REGION=us-central
-GOOGLE_AUDIENCES={GOOGLE_AUDIENCES}
+INTEGRATION_TEST_AUDIENCES={GOOGLE_AUDIENCES}
 SUBSCRIBER_SECRET={SUBSCRIBER_SECRET}
 SUBSCRIBER_PRIVATE_KEY_ID={SUBSCRIBER_PRIVATE_KEY_ID} 
 enable.appengine.log.factory=true
\ No newline at end of file
diff --git a/provider/register-gcp/src/main/resources/application-local.properties b/provider/register-gcp/src/main/resources/application-local.properties
index 3d82959e2a4dc26394baaa4e3c23b7f73944c920..eb922505390b2a9991997ce514c75d60745fec9c 100644
--- a/provider/register-gcp/src/main/resources/application-local.properties
+++ b/provider/register-gcp/src/main/resources/application-local.properties
@@ -5,7 +5,7 @@ STORAGE_API=https://os-storage-dot-opendes.appspot.com/api/storage/v2
 RECORDS_CHANGE_PUBSUB_ENDPOINT=https://os-notification-dot-opendes.appspot.com/push-handlers/records-changed
 GOOGLE_CLOUD_PROJECT=opendes
 GCLOUD_REGION=us-central
-GOOGLE_AUDIENCES=245464679631-ktfdfpl147m1mjpbutl00b3cmffissgq.apps.googleusercontent.com
+INTEGRATION_TEST_AUDIENCES=245464679631-ktfdfpl147m1mjpbutl00b3cmffissgq.apps.googleusercontent.com
 SUBSCRIBER_SECRET={SUBSCRIBER_SECRET}
 SUBSCRIBER_PRIVATE_KEY_ID={SUBSCRIBER_PRIVATE_KEY_ID}
 enable.appengine.log.factory=false
\ No newline at end of file
diff --git a/register-core/pom.xml b/register-core/pom.xml
index 01745ce18be4b18a15a7d70dc6e4a67c7571d81b..41ebb643cb2c8edbccd392e3739590ba1582665b 100644
--- a/register-core/pom.xml
+++ b/register-core/pom.xml
@@ -82,10 +82,6 @@
             <groupId>org.opengroup.osdu</groupId>
             <artifactId>os-core-common</artifactId>
         </dependency>
-        <dependency>
-            <groupId>org.opengroup.osdu</groupId>
-            <artifactId>core-lib-gcp</artifactId>
-        </dependency>
         <dependency>
             <groupId>com.google.api</groupId>
             <artifactId>gax-grpc</artifactId>
diff --git a/register-core/src/main/java/org/opengroup/osdu/register/api/SubscriberTestListenerApi.java b/register-core/src/main/java/org/opengroup/osdu/register/api/SubscriberTestListenerApi.java
index 4fa6a0de72112fc2cb17469d2be8fae633f57036..d9606812112976beb16adc9e7744b81e70932918 100644
--- a/register-core/src/main/java/org/opengroup/osdu/register/api/SubscriberTestListenerApi.java
+++ b/register-core/src/main/java/org/opengroup/osdu/register/api/SubscriberTestListenerApi.java
@@ -113,7 +113,7 @@ public class SubscriberTestListenerApi {
 
         try {
             GoogleIdTokenVerifier verifier = new GoogleIdTokenVerifier.Builder(new NetHttpTransport(), JacksonFactory.getDefaultInstance())
-                    .setAudience(Collections.singletonList(this.serviceConfig.getGoogleAudiences()))
+                    .setAudience(Collections.singletonList(this.serviceConfig.getIntegrationTestJwtAudiences()))
                     .build();
             GoogleIdToken idToken = verifier.verify(headers.getAuthorization());
             return idToken != null;
diff --git a/register-core/src/main/java/org/opengroup/osdu/register/subscriber/services/ChallengeResponseCheck.java b/register-core/src/main/java/org/opengroup/osdu/register/subscriber/services/ChallengeResponseCheck.java
index c29192b258a00350ea221109de0185433c4bf0d8..0f734231e67b07c600fc2b053e6f7e96483a7358 100644
--- a/register-core/src/main/java/org/opengroup/osdu/register/subscriber/services/ChallengeResponseCheck.java
+++ b/register-core/src/main/java/org/opengroup/osdu/register/subscriber/services/ChallengeResponseCheck.java
@@ -19,20 +19,19 @@ package org.opengroup.osdu.register.subscriber.services;
 import com.google.common.hash.Hashing;
 import com.google.gson.JsonElement;
 import com.google.gson.JsonParser;
-import org.apache.http.impl.client.HttpClients;
+import org.opengroup.osdu.core.common.cryptographic.ISignatureService;
 import org.opengroup.osdu.core.common.http.HttpRequest;
 import org.opengroup.osdu.core.common.http.HttpResponse;
 import org.opengroup.osdu.core.common.http.IHttpClient;
 import org.opengroup.osdu.core.common.logging.JaxRsDpsLog;
 import org.opengroup.osdu.core.common.model.http.DpsHeaders;
-import org.opengroup.osdu.core.common.cryptographic.ISignatureService;
-import org.opengroup.osdu.core.gcp.GoogleIdToken.IGoogleIdTokenFactory;
-import org.opengroup.osdu.register.utils.AppServiceConfig;
-import org.opengroup.osdu.register.utils.Constants;
 import org.opengroup.osdu.register.subscriber.model.GsaSecret;
 import org.opengroup.osdu.register.subscriber.model.HmacSecret;
 import org.opengroup.osdu.register.subscriber.model.Secret;
 import org.opengroup.osdu.register.subscriber.model.Subscription;
+import org.opengroup.osdu.register.utils.AppServiceConfig;
+import org.opengroup.osdu.register.utils.Constants;
+import org.opengroup.osdu.register.utils.IGoogleServiceAccount;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -51,7 +50,7 @@ public class ChallengeResponseCheck {
     @Autowired
     private ISignatureService signatureService;
     @Autowired
-    private IGoogleIdTokenFactory googleIdTokenFactory;
+    private IGoogleServiceAccount googleServiceAccount;
     @Autowired
     private AppServiceConfig serviceConfig;
     @Autowired
@@ -89,8 +88,8 @@ public class ChallengeResponseCheck {
                 JsonParser jsonParser = new JsonParser();
                 JsonElement root = jsonParser.parse(gsaSecret.getValue().getKey());
                 String keyString = root.getAsJsonObject().toString();
-                String idToken = this.googleIdTokenFactory.getGoogleIdToken(keyString, gsaSecret.getValue().getAudience(), HttpClients.createDefault());
-                secretString = this.googleIdTokenFactory.getPrivateKeyId(keyString);
+                String idToken = this.googleServiceAccount.getIdToken(keyString, gsaSecret.getValue().getAudience());
+                secretString = this.googleServiceAccount.getPrivateKeyId(keyString);
 
                 // send gsa challange with idtoken in header
                 response = sendGsaChallenge(input, crc, idToken);
diff --git a/register-core/src/main/java/org/opengroup/osdu/register/utils/AppServiceConfig.java b/register-core/src/main/java/org/opengroup/osdu/register/utils/AppServiceConfig.java
index c4f4f46f569838af2b96a769096fd9a268ebe81e..9c2bb3b6b63a720d71cbe8974b8e5304ac914ee9 100644
--- a/register-core/src/main/java/org/opengroup/osdu/register/utils/AppServiceConfig.java
+++ b/register-core/src/main/java/org/opengroup/osdu/register/utils/AppServiceConfig.java
@@ -22,18 +22,14 @@ import org.springframework.stereotype.Component;
 @Component
 public class AppServiceConfig {
 
-    @Value("${GOOGLE_CLOUD_PROJECT}")
-    private String googleCloudProject;
-    @Value("${GOOGLE_AUDIENCES}")
-    private String googleAudiences;
+    @Value("${INTEGRATION_TEST_AUDIENCES}")
+    private String integrationTestJwtAudiences;
     @Value("${CRON_JOB_EXPECTED_IP}")
     private String cronJobExpectedIp;
     @Value("${ACCEPT_HTTP:false}")
     private boolean acceptHttp;
     @Value("${ENVIRONMENT}")
     private String environment;
-    @Value("${SERVICE_IDENTITY}")
-    private String serviceIdentity;
     @Value("${PERSISTENCE:CLOUD_NATIVE}")
     private String persistence;
     @Value("${ENTITLEMENTS_API}")
@@ -45,12 +41,8 @@ public class AppServiceConfig {
     @Value("${SUBSCRIBER_SECRET}")
     private String subscriberSecret;
 
-    public String getGoogleCloudProject() {
-        return googleCloudProject;
-    }
-
-    public String getGoogleAudiences() {
-        return googleAudiences;
+    public String getIntegrationTestJwtAudiences() {
+        return integrationTestJwtAudiences;
     }
 
     public boolean getAcceptHttp() {
@@ -86,10 +78,6 @@ public class AppServiceConfig {
                 "TEST".equalsIgnoreCase(environment) || "P4D".equalsIgnoreCase(environment);
     }
 
-    public String getServiceAccountIdentity() {
-        return String.format("%s@%s.iam.gserviceaccount.com", serviceIdentity, googleCloudProject);
-    }
-
     public String getMongoDatabaseName() {
         return String.format("ddms-db-%s", getDeploymentEnvironment()).toLowerCase();
     }
diff --git a/register-core/src/main/java/org/opengroup/osdu/register/utils/IGoogleServiceAccount.java b/register-core/src/main/java/org/opengroup/osdu/register/utils/IGoogleServiceAccount.java
new file mode 100644
index 0000000000000000000000000000000000000000..c8ccc89a963fa708d8708ad96c2708c050125ea3
--- /dev/null
+++ b/register-core/src/main/java/org/opengroup/osdu/register/utils/IGoogleServiceAccount.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright 2017-2020, Schlumberger
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.opengroup.osdu.register.utils;
+
+public interface IGoogleServiceAccount {
+
+    String getIdToken(String keyString, String audience);
+
+    String getPrivateKeyId(String keyString);
+}
\ No newline at end of file