From 303a0f3fe3c2fd9f61b8c2cfe5a964aa506bbfba Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Thu, 14 Nov 2024 13:21:51 -0700 Subject: [PATCH 01/13] Started the rename of core too --- conf/default-config.json | 2 +- conf/integ-config.json | 2 +- conf/local-config.json | 2 +- conf/local-e2e-config.json | 2 +- conf/local-e2e-docker-config.json | 2 +- pom.xml | 2 +- src/main/java/com/uid2/core/Main.java | 18 ++-- .../com/uid2/core/vertx/CoreVerticle.java | 25 +++--- .../cloud_encryption_keys.json} | 0 .../test/cloud_encryption_keys/metadata.json | 7 ++ .../test/s3encryption_keys/metadata.json | 7 -- .../com/uid2/core/vertx/TestCoreVerticle.java | 88 +++++++++---------- .../com.uid2.core/model/test-config.json | 2 +- 13 files changed, 80 insertions(+), 79 deletions(-) rename src/main/resources/com.uid2.core/test/{s3encryption_keys/s3encryption_keys.json => cloud_encryption_keys/cloud_encryption_keys.json} (100%) create mode 100644 src/main/resources/com.uid2.core/test/cloud_encryption_keys/metadata.json delete mode 100644 src/main/resources/com.uid2.core/test/s3encryption_keys/metadata.json diff --git a/conf/default-config.json b/conf/default-config.json index 2ae0c632..3b9507e7 100644 --- a/conf/default-config.json +++ b/conf/default-config.json @@ -17,5 +17,5 @@ "att_token_enc_key": null, "att_token_enc_salt": null, "enforceJwt": false, - "s3_keys_metadata_path": null + "cloud_encryption_keys_metadata_path": null } diff --git a/conf/integ-config.json b/conf/integ-config.json index 136c60fd..fa8b1049 100644 --- a/conf/integ-config.json +++ b/conf/integ-config.json @@ -18,5 +18,5 @@ "keyset_keys_metadata_path": "uid2/keyset_keys/metadata.json", "salts_metadata_path": "uid2/salts/metadata.json", "enforceJwt": false, - "s3_keys_metadata_path": "uid2/s3encryption_keys/metadata.json" + "cloud_encryption_keys_metadata_path": "uid2/cloud_encryption_keys/metadata.json" } \ No newline at end of file diff --git a/conf/local-config.json b/conf/local-config.json index 33d3c2ba..d983fca6 100644 --- a/conf/local-config.json +++ b/conf/local-config.json @@ -19,5 +19,5 @@ "att_token_enc_salt": "", "provide_private_site_data": true, "enforceJwt": false, - "s3_keys_metadata_path": "/com.uid2.core/test/s3encryption_keys/metadata.json" + "cloud_encryption_keys_metadata_path": "/com.uid2.core/test/cloud_encryption_keys/metadata.json" } diff --git a/conf/local-e2e-config.json b/conf/local-e2e-config.json index eca0c84b..b4ed344d 100644 --- a/conf/local-e2e-config.json +++ b/conf/local-e2e-config.json @@ -33,5 +33,5 @@ "aws_kms_jwt_signing_public_keys": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmvwB41qI5Fe41PDbXqcX5uOvSvfKh8l9QV0O3M+NsB4lKqQEP0t1hfoiXTpOgKz1ArYxHsQ2LeXifX4uwEbYJFlpVM+tyQkTWQjBOw6fsLYK2Xk4X2ylNXUUf7x3SDiOVxyvTh3OZW9kqrDBN9JxSoraNLyfw0hhW0SHpfs699SehgbQ7QWep/gVlKRLIz0XAXaZNw24s79ORcQlrCE6YD0PgQmpI/dK5xMML82n6y3qcTlywlGaU7OGIMdD+CTXA3BcOkgXeqZTXNaX1u6jCTa1lvAczun6avp5VZ4TFiuPo+y4rJ3GU+14cyT5NckEcaTKSvd86UdwK5Id9tl3bQIDAQAB", "core_public_url": "http://localhost:8088", "optout_url": "http://localhost:8081", - "s3_keys_metadata_path": "s3encryption_keys/metadata.json" + "cloud_keys_metadata_path": "cloud_encryption_keys/metadata.json" } diff --git a/conf/local-e2e-docker-config.json b/conf/local-e2e-docker-config.json index d86306ee..fb0532af 100644 --- a/conf/local-e2e-docker-config.json +++ b/conf/local-e2e-docker-config.json @@ -32,5 +32,5 @@ "aws_kms_jwt_signing_public_keys": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmvwB41qI5Fe41PDbXqcX5uOvSvfKh8l9QV0O3M+NsB4lKqQEP0t1hfoiXTpOgKz1ArYxHsQ2LeXifX4uwEbYJFlpVM+tyQkTWQjBOw6fsLYK2Xk4X2ylNXUUf7x3SDiOVxyvTh3OZW9kqrDBN9JxSoraNLyfw0hhW0SHpfs699SehgbQ7QWep/gVlKRLIz0XAXaZNw24s79ORcQlrCE6YD0PgQmpI/dK5xMML82n6y3qcTlywlGaU7OGIMdD+CTXA3BcOkgXeqZTXNaX1u6jCTa1lvAczun6avp5VZ4TFiuPo+y4rJ3GU+14cyT5NckEcaTKSvd86UdwK5Id9tl3bQIDAQAB", "core_public_url": "http://core:8088", "optout_url": "http://optout:8081", - "s3_keys_metadata_path": "s3encryption_keys/metadata.json" + "cloud_encryption_keys_metadata_path": "cloud_encryption_keys/metadata.json" } diff --git a/pom.xml b/pom.xml index d387d184..e33798f9 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.20.0 + 7.21.1-alpha-157-SNAPSHOT ${project.version} diff --git a/src/main/java/com/uid2/core/Main.java b/src/main/java/com/uid2/core/Main.java index d7bc275c..f6e46231 100644 --- a/src/main/java/com/uid2/core/Main.java +++ b/src/main/java/com/uid2/core/Main.java @@ -14,8 +14,8 @@ import com.uid2.shared.attest.JwtService; import com.uid2.shared.auth.EnclaveIdentifierProvider; import com.uid2.shared.auth.RotatingOperatorKeyProvider; -import com.uid2.shared.store.reader.RotatingS3KeyProvider; -import com.uid2.shared.model.S3Key; +import com.uid2.shared.store.reader.RotatingCloudEncryptionKeyProvider; +import com.uid2.shared.model.CloudEncryptionKey; import com.uid2.shared.cloud.CloudUtils; import com.uid2.shared.cloud.EmbeddedResourceStorage; import com.uid2.shared.cloud.ICloudStorage; @@ -106,7 +106,7 @@ public static void main(String[] args) { RotatingStoreVerticle enclaveRotatingVerticle = null; RotatingStoreVerticle operatorRotatingVerticle = null; - RotatingStoreVerticle s3KeyRotatingVerticle = null; + RotatingStoreVerticle cloudEncryptionKeyRotatingVerticle = null; CoreVerticle coreVerticle = null; try { CloudPath operatorMetadataPath = new CloudPath(config.getString(Const.Config.OperatorsMetadataPathProp)); @@ -118,10 +118,10 @@ public static void main(String[] args) { EnclaveIdentifierProvider enclaveIdProvider = new EnclaveIdentifierProvider(cloudStorage, enclaveMetadataPath); enclaveRotatingVerticle = new RotatingStoreVerticle("enclaves", 60000, enclaveIdProvider); - CloudPath s3KeyMetadataPath = new CloudPath(config.getString(Const.Config.S3keysMetadataPathProp)); - GlobalScope s3KeyScope = new GlobalScope(s3KeyMetadataPath); - RotatingS3KeyProvider s3KeyProvider = new RotatingS3KeyProvider(cloudStorage, s3KeyScope); - s3KeyRotatingVerticle = new RotatingStoreVerticle("s3encryption_keys", 60000, s3KeyProvider); + CloudPath cloudEncryptionKeyMetadataPath = new CloudPath(config.getString(Const.Config.CloudEncryptionKeysMetadataPathProp)); + GlobalScope cloudEncryptionKeyScope = new GlobalScope(cloudEncryptionKeyMetadataPath); + RotatingCloudEncryptionKeyProvider cloudEncryptionKeyProvider = new RotatingCloudEncryptionKeyProvider(cloudStorage, cloudEncryptionKeyScope); + cloudEncryptionKeyRotatingVerticle = new RotatingStoreVerticle("cloud_encryption_keys", 60000, cloudEncryptionKeyProvider); String corePublicUrl = ConfigStore.Global.get(Const.Config.CorePublicUrlProp); AttestationService attestationService = new AttestationService() @@ -157,7 +157,7 @@ public static void main(String[] args) { JwtService jwtService = new JwtService(config); - coreVerticle = new CoreVerticle(cloudStorage, operatorKeyProvider, attestationService, attestationTokenService, enclaveIdProvider, operatorJWTTokenProvider, jwtService, s3KeyProvider); + coreVerticle = new CoreVerticle(cloudStorage, operatorKeyProvider, attestationService, attestationTokenService, enclaveIdProvider, operatorJWTTokenProvider, jwtService, cloudEncryptionKeyProvider); } catch (Exception e) { System.out.println("failed to initialize core verticle: " + e.getMessage()); System.exit(-1); @@ -165,7 +165,7 @@ public static void main(String[] args) { vertx.deployVerticle(enclaveRotatingVerticle); vertx.deployVerticle(operatorRotatingVerticle); - vertx.deployVerticle(s3KeyRotatingVerticle); + vertx.deployVerticle(cloudEncryptionKeyRotatingVerticle); vertx.deployVerticle(coreVerticle); }); } diff --git a/src/main/java/com/uid2/core/vertx/CoreVerticle.java b/src/main/java/com/uid2/core/vertx/CoreVerticle.java index 00eccda6..23b793c0 100644 --- a/src/main/java/com/uid2/core/vertx/CoreVerticle.java +++ b/src/main/java/com/uid2/core/vertx/CoreVerticle.java @@ -50,8 +50,9 @@ import java.time.Instant; import java.util.*; -import com.uid2.shared.store.reader.RotatingS3KeyProvider; -import com.uid2.shared.model.S3Key; +import com.uid2.shared.store.reader.RotatingCloudEncryptionKeyProvider; +import com.uid2.shared.model.CloudEncryptionKey; + import static com.uid2.shared.Const.Config.EnforceJwtProp; @@ -79,7 +80,7 @@ public class CoreVerticle extends AbstractVerticle { private final ISaltMetadataProvider saltMetadataProvider; private final IPartnerMetadataProvider partnerMetadataProvider; private final OperatorJWTTokenProvider operatorJWTTokenProvider; - private final RotatingS3KeyProvider s3KeyProvider; + private final RotatingCloudEncryptionKeyProvider cloudEncryptionKeyProvider; public CoreVerticle(ICloudStorage cloudStorage, IAuthorizableProvider authProvider, @@ -88,7 +89,7 @@ public CoreVerticle(ICloudStorage cloudStorage, IEnclaveIdentifierProvider enclaveIdentifierProvider, OperatorJWTTokenProvider operatorJWTTokenProvider, JwtService jwtService, - RotatingS3KeyProvider s3KeyProvider) throws Exception { + RotatingCloudEncryptionKeyProvider cloudEncryptionKeyProvider) throws Exception { this.operatorJWTTokenProvider = operatorJWTTokenProvider; this.healthComponent.setHealthStatus(false, "not started"); @@ -98,7 +99,7 @@ public CoreVerticle(ICloudStorage cloudStorage, this.attestationTokenService = attestationTokenService; this.enclaveIdentifierProvider = enclaveIdentifierProvider; this.enclaveIdentifierProvider.addListener(this.attestationService); - this.s3KeyProvider = s3KeyProvider; + this.cloudEncryptionKeyProvider = cloudEncryptionKeyProvider; final String jwtAudience = ConfigStore.Global.get(Const.Config.CorePublicUrlProp); final String jwtIssuer = ConfigStore.Global.get(Const.Config.CorePublicUrlProp); @@ -178,7 +179,7 @@ private Router createRoutesSetup() { router.post("/attest") .handler(new AttestationFailureHandler()) .handler(auth.handle(this::handleAttestAsync, Role.OPERATOR, Role.OPTOUT_SERVICE)); - router.get("/s3encryption_keys/retrieve").handler(auth.handle(attestationMiddleware.handle(this::handleS3EncryptionKeysRetrieval), Role.OPERATOR)); + router.get("/cloud_encryption_keys/retrieve").handler(auth.handle(attestationMiddleware.handle(this::handleCloudEncryptionKeysRetrieval), Role.OPERATOR)); router.get("/sites/refresh").handler(auth.handle(attestationMiddleware.handle(this::handleSiteRefresh), Role.OPERATOR)); router.get("/key/refresh").handler(auth.handle(attestationMiddleware.handle(this::handleKeyRefresh), Role.OPERATOR)); router.get("/key/acl/refresh").handler(auth.handle(attestationMiddleware.handle(this::handleKeyAclRefresh), Role.OPERATOR)); @@ -609,24 +610,24 @@ private void handleEnclaveUnregister(RoutingContext rc) { handleEnclaveChange(rc, true); } - void handleS3EncryptionKeysRetrieval(RoutingContext rc) { + void handleCloudEncryptionKeysRetrieval(RoutingContext rc) { try { OperatorInfo info = OperatorInfo.getOperatorInfo(rc); int siteId = info.getSiteId(); - List s3Keys = s3KeyProvider.getKeys(siteId); + List cloudEncryptionKeys = cloudEncryptionKeyProvider.getKeys(siteId); - if (s3Keys == null || s3Keys.isEmpty()) { - Error("No S3 keys found", 500, rc, "No S3 keys found for siteId: " + siteId); + if (cloudEncryptionKeys == null || cloudEncryptionKeys.isEmpty()) { + Error("No Cloud Encryption keys found", 500, rc, "No Cloud Encryption keys found for siteId: " + siteId); return; } JsonObject response = new JsonObject() - .put("s3Keys", new JsonArray(s3Keys)); + .put("cloudEncryptionKeys", new JsonArray(cloudEncryptionKeys)); rc.response().putHeader(HttpHeaders.CONTENT_TYPE, "application/json") .end(response.encode()); } catch (Exception e) { - logger.error("Error in handleRefreshS3Keys: ", e); + logger.error("Error in handleRefreshCloudEncryptionKeys: ", e); Error("error", 500, rc, "error generating attestation token"); } } diff --git a/src/main/resources/com.uid2.core/test/s3encryption_keys/s3encryption_keys.json b/src/main/resources/com.uid2.core/test/cloud_encryption_keys/cloud_encryption_keys.json similarity index 100% rename from src/main/resources/com.uid2.core/test/s3encryption_keys/s3encryption_keys.json rename to src/main/resources/com.uid2.core/test/cloud_encryption_keys/cloud_encryption_keys.json diff --git a/src/main/resources/com.uid2.core/test/cloud_encryption_keys/metadata.json b/src/main/resources/com.uid2.core/test/cloud_encryption_keys/metadata.json new file mode 100644 index 00000000..af9de38c --- /dev/null +++ b/src/main/resources/com.uid2.core/test/cloud_encryption_keys/metadata.json @@ -0,0 +1,7 @@ +{ + "version": 1, + "generated": 1620253519, + "cloud_encryption_keys": { + "location": "/com.uid2.core/test/cloud_encryption_keys/cloud_encryption_keys.json" + } +} \ No newline at end of file diff --git a/src/main/resources/com.uid2.core/test/s3encryption_keys/metadata.json b/src/main/resources/com.uid2.core/test/s3encryption_keys/metadata.json deleted file mode 100644 index 4a667ec4..00000000 --- a/src/main/resources/com.uid2.core/test/s3encryption_keys/metadata.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 1, - "generated": 1620253519, - "s3encryption_keys": { - "location": "/com.uid2.core/test/s3encryption_keys/s3encryption_keys.json" - } -} \ No newline at end of file diff --git a/src/test/java/com/uid2/core/vertx/TestCoreVerticle.java b/src/test/java/com/uid2/core/vertx/TestCoreVerticle.java index cc1450bd..f2191f09 100644 --- a/src/test/java/com/uid2/core/vertx/TestCoreVerticle.java +++ b/src/test/java/com/uid2/core/vertx/TestCoreVerticle.java @@ -14,7 +14,7 @@ import com.uid2.shared.secure.AttestationFailure; import com.uid2.shared.secure.AttestationResult; import com.uid2.shared.secure.ICoreAttestationService; -import com.uid2.shared.store.reader.RotatingS3KeyProvider; +import com.uid2.shared.store.reader.RotatingCloudEncryptionKeyProvider; import io.vertx.core.*; import io.vertx.core.buffer.Buffer; import io.vertx.core.json.JsonArray; @@ -45,7 +45,7 @@ import java.util.*; import java.util.concurrent.Callable; -import com.uid2.shared.model.S3Key; +import com.uid2.shared.model.CloudEncryptionKey; import java.util.Arrays; import static org.mockito.Mockito.*; @@ -67,7 +67,7 @@ public class TestCoreVerticle { @Mock private JwtService jwtService; @Mock - private RotatingS3KeyProvider s3KeyProvider; + private RotatingCloudEncryptionKeyProvider cloudEncryptionKeyProvider; private AttestationService attestationService; @@ -90,7 +90,7 @@ void deployVerticle(TestInfo info, Vertx vertx, VertxTestContext testContext) th attestationService = new AttestationService(); MockitoAnnotations.initMocks(this); - CoreVerticle verticle = new CoreVerticle(cloudStorage, authProvider, attestationService, attestationTokenService, enclaveIdentifierProvider, operatorJWTTokenProvider, jwtService, s3KeyProvider); + CoreVerticle verticle = new CoreVerticle(cloudStorage, authProvider, attestationService, attestationTokenService, enclaveIdentifierProvider, operatorJWTTokenProvider, jwtService, cloudEncryptionKeyProvider); vertx.deployVerticle(verticle, testContext.succeeding(id -> testContext.completeNow())); } @@ -604,8 +604,8 @@ void wrongMethodForEndpoint(Vertx vertx, VertxTestContext testContext) { } @Test - void wrongMethodForEndpointS3(Vertx vertx, VertxTestContext testContext) { - post(vertx, "/s3encryption_keys/retrieve", makeAttestationRequestJson(null, null), ar -> { + void wrongMethodForEndpointCloudEncryption(Vertx vertx, VertxTestContext testContext) { + post(vertx, "/cloud_encryption_keys/retrieve", makeAttestationRequestJson(null, null), ar -> { try { HttpResponse response = ar.result(); assertEquals(405, response.statusCode()); @@ -619,7 +619,7 @@ void wrongMethodForEndpointS3(Vertx vertx, VertxTestContext testContext) { @Tag("dontForceJwt") @Test - void s3encryptionKeyRetrieveSuccess(Vertx vertx, VertxTestContext testContext) { + void cloudEncryptionKeyRetrieveSuccess(Vertx vertx, VertxTestContext testContext) { fakeAuth(attestationProtocolPublic, Role.OPERATOR); addAttestationProvider(attestationProtocolPublic); onHandleAttestationRequest(() -> { @@ -627,29 +627,29 @@ void s3encryptionKeyRetrieveSuccess(Vertx vertx, VertxTestContext testContext) { return Future.succeededFuture(new AttestationResult(resultPublicKey, "test")); }); - S3Key key = new S3Key(1, 88, 1687635529, 1687808329, "newSecret"); + CloudEncryptionKey key = new CloudEncryptionKey(1, 88, 1687635529, 1687808329, "newSecret"); - List keys = Arrays.asList(key); - when(s3KeyProvider.getKeys(88)).thenReturn(keys); + List keys = Arrays.asList(key); + when(cloudEncryptionKeyProvider.getKeys(88)).thenReturn(keys); - get(vertx, "s3encryption_keys/retrieve", ar -> { + get(vertx, "cloud_encryption_keys/retrieve", ar -> { try { if (ar.succeeded()) { HttpResponse response = ar.result(); assertEquals(200, response.statusCode()); JsonObject json = response.bodyAsJsonObject(); - JsonArray s3KeysArray = json.getJsonArray("s3Keys"); + JsonArray cloudEncryptionKeysArray = json.getJsonArray("cloudEncryptionKeys"); - assertNotNull(s3KeysArray); - assertEquals(1, s3KeysArray.size()); + assertNotNull(cloudEncryptionKeysArray); + assertEquals(1, cloudEncryptionKeysArray.size()); - JsonObject s3KeyJson = s3KeysArray.getJsonObject(0); - assertEquals(1, s3KeyJson.getInteger("id")); - assertEquals(88, s3KeyJson.getInteger("siteId")); - assertEquals(1687635529, s3KeyJson.getLong("activates")); - assertEquals(1687808329, s3KeyJson.getLong("created")); - assertEquals("newSecret", s3KeyJson.getString("secret")); + JsonObject cloudEncryptionKeyJson = cloudEncryptionKeysArray.getJsonObject(0); + assertEquals(1, cloudEncryptionKeyJson.getInteger("id")); + assertEquals(88, cloudEncryptionKeyJson.getInteger("siteId")); + assertEquals(1687635529, cloudEncryptionKeyJson.getLong("activates")); + assertEquals(1687808329, cloudEncryptionKeyJson.getLong("created")); + assertEquals("newSecret", cloudEncryptionKeyJson.getString("secret")); testContext.completeNow(); } else { @@ -664,7 +664,7 @@ void s3encryptionKeyRetrieveSuccess(Vertx vertx, VertxTestContext testContext) { @Tag("dontForceJwt") @Test - void s3encryptionKeyRetrieveSuccessWithThreeKeys(Vertx vertx, VertxTestContext testContext) { + void cloudEncryptionKeyRetrieveSuccessWithThreeKeys(Vertx vertx, VertxTestContext testContext) { fakeAuth(attestationProtocolPublic, Role.OPERATOR); addAttestationProvider(attestationProtocolPublic); onHandleAttestationRequest(() -> { @@ -672,33 +672,33 @@ void s3encryptionKeyRetrieveSuccessWithThreeKeys(Vertx vertx, VertxTestContext t return Future.succeededFuture(new AttestationResult(resultPublicKey, "test")); }); - // Create 3 S3Key objects - S3Key key1 = new S3Key(1, 88, 1687635529, 1687808329, "secret1"); - S3Key key2 = new S3Key(2, 88, 1687635530, 1687808330, "secret2"); - S3Key key3 = new S3Key(3, 88, 1687635531, 1687808331, "secret3"); + // Create 3 CloudEncryptionKey objects + CloudEncryptionKey key1 = new CloudEncryptionKey(1, 88, 1687635529, 1687808329, "secret1"); + CloudEncryptionKey key2 = new CloudEncryptionKey(2, 88, 1687635530, 1687808330, "secret2"); + CloudEncryptionKey key3 = new CloudEncryptionKey(3, 88, 1687635531, 1687808331, "secret3"); - List keys = Arrays.asList(key1, key2, key3); - when(s3KeyProvider.getKeys(88)).thenReturn(keys); + List keys = Arrays.asList(key1, key2, key3); + when(cloudEncryptionKeyProvider.getKeys(88)).thenReturn(keys); - get(vertx, "s3encryption_keys/retrieve", ar -> { + get(vertx, "cloud_encryption_keys/retrieve", ar -> { try { if (ar.succeeded()) { HttpResponse response = ar.result(); assertEquals(200, response.statusCode()); JsonObject json = response.bodyAsJsonObject(); - JsonArray s3KeysArray = json.getJsonArray("s3Keys"); + JsonArray cloudEncryptionKeysArray = json.getJsonArray("cloudEncryptionKeys"); - assertNotNull(s3KeysArray); - assertEquals(3, s3KeysArray.size()); + assertNotNull(cloudEncryptionKeysArray); + assertEquals(3, cloudEncryptionKeysArray.size()); for (int i = 0; i < 3; i++) { - JsonObject s3KeyJson = s3KeysArray.getJsonObject(i); - assertEquals(i + 1, s3KeyJson.getInteger("id")); - assertEquals(88, s3KeyJson.getInteger("siteId")); - assertEquals(1687635529 + i, s3KeyJson.getLong("activates")); - assertEquals(1687808329 + i, s3KeyJson.getLong("created")); - assertEquals("secret" + (i + 1), s3KeyJson.getString("secret")); + JsonObject cloudEncryptionKeyJson = cloudEncryptionKeysArray.getJsonObject(i); + assertEquals(i + 1, cloudEncryptionKeyJson.getInteger("id")); + assertEquals(88, cloudEncryptionKeyJson.getInteger("siteId")); + assertEquals(1687635529 + i, cloudEncryptionKeyJson.getLong("activates")); + assertEquals(1687808329 + i, cloudEncryptionKeyJson.getLong("created")); + assertEquals("secret" + (i + 1), cloudEncryptionKeyJson.getString("secret")); } testContext.completeNow(); @@ -713,7 +713,7 @@ void s3encryptionKeyRetrieveSuccessWithThreeKeys(Vertx vertx, VertxTestContext t @Tag("dontForceJwt") @Test - void s3encryptionKeyRetrieveNoKeysOrError(Vertx vertx, VertxTestContext testContext) { + void cloudEncryptionKeyRetrieveNoKeysOrError(Vertx vertx, VertxTestContext testContext) { fakeAuth(attestationProtocolPublic, Role.OPERATOR); addAttestationProvider(attestationProtocolPublic); onHandleAttestationRequest(() -> { @@ -722,22 +722,22 @@ void s3encryptionKeyRetrieveNoKeysOrError(Vertx vertx, VertxTestContext testCont }); // Test case 1: No keys found - when(s3KeyProvider.getKeys(anyInt())).thenReturn(Collections.emptyList()); + when(cloudEncryptionKeyProvider.getKeys(anyInt())).thenReturn(Collections.emptyList()); - get(vertx, "s3encryption_keys/retrieve", ar -> { + get(vertx, "cloud_encryption_keys/retrieve", ar -> { try { if (ar.succeeded()) { HttpResponse response = ar.result(); assertEquals(500, response.statusCode()); JsonObject json = response.bodyAsJsonObject(); - assertEquals("No S3 keys found", json.getString("status")); - assertTrue(json.getString("message").contains("No S3 keys found for siteId:")); + assertEquals("No Cloud Encryption keys found", json.getString("status")); + assertTrue(json.getString("message").contains("No Cloud Encryption keys found for siteId:")); // Test case 2: Exception thrown - when(s3KeyProvider.getKeys(anyInt())).thenThrow(new RuntimeException("Test exception")); + when(cloudEncryptionKeyProvider.getKeys(anyInt())).thenThrow(new RuntimeException("Test exception")); - get(vertx, "s3encryption_keys/retrieve", ar2 -> { + get(vertx, "cloud_encryption_keys/retrieve", ar2 -> { if (ar2.succeeded()) { HttpResponse response2 = ar2.result(); assertEquals(500, response2.statusCode()); diff --git a/src/test/resources/com.uid2.core/model/test-config.json b/src/test/resources/com.uid2.core/model/test-config.json index f8d66eef..efafe6b4 100644 --- a/src/test/resources/com.uid2.core/model/test-config.json +++ b/src/test/resources/com.uid2.core/model/test-config.json @@ -23,5 +23,5 @@ "att_token_enc_salt": "", "att_token_lifetime_seconds": 120, "provide_private_site_data": true, - "s3_keys_metadata_path": "s3encryption_keys/metadata.json" + "cloud_keys_metadata_path": "cloud_encryption_keys/metadata.json" } From 7bfc2808c4a7b2756d30df8657be04e6f90c9f8b Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Thu, 14 Nov 2024 13:42:54 -0700 Subject: [PATCH 02/13] Upgrading workflows --- .github/workflows/build-and-test.yaml | 2 +- .github/workflows/check-stable-dependency.yaml | 2 +- .github/workflows/validate-image.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-and-test.yaml b/.github/workflows/build-and-test.yaml index 9554020e..c82c09d9 100644 --- a/.github/workflows/build-and-test.yaml +++ b/.github/workflows/build-and-test.yaml @@ -3,7 +3,7 @@ on: [pull_request, push, workflow_dispatch] jobs: build: - uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-build-and-test.yaml@v2 + uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-build-and-test.yaml@v3 with: java_version: "21" secrets: inherit diff --git a/.github/workflows/check-stable-dependency.yaml b/.github/workflows/check-stable-dependency.yaml index 8af1681a..df07da29 100644 --- a/.github/workflows/check-stable-dependency.yaml +++ b/.github/workflows/check-stable-dependency.yaml @@ -3,5 +3,5 @@ on: [pull_request, workflow_dispatch] jobs: check_dependency: - uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-check-stable-dependency.yaml@v2 + uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-check-stable-dependency.yaml@v3 secrets: inherit diff --git a/.github/workflows/validate-image.yaml b/.github/workflows/validate-image.yaml index 9b34105d..5ed29990 100644 --- a/.github/workflows/validate-image.yaml +++ b/.github/workflows/validate-image.yaml @@ -19,7 +19,7 @@ on: jobs: build-publish-docker-default: - uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-validate-image.yaml@v2 + uses: IABTechLab/uid2-shared-actions/.github/workflows/shared-validate-image.yaml@v3 with: failure_severity: ${{ inputs.failure_severity || 'CRITICAL,HIGH' }} fail_on_error: ${{ inputs.fail_on_error || true }} From a76862fd02f545702c208ef0edf872f9cf233862 Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Mon, 18 Nov 2024 10:43:01 -0700 Subject: [PATCH 03/13] Adding new version of shared --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index b49874fe..dc3a009c 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.21.7 + 7.21.8-alpha-159-SNAPSHOT ${project.version} From 2dc3d1416cfe7ccedb291c8a1b1e311d29e2d731 Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Mon, 18 Nov 2024 17:45:27 +0000 Subject: [PATCH 04/13] [CI Pipeline] Released Snapshot version: 2.20.15-alpha-53-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dc3a009c..b76b3106 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-core - 2.20.14 + 2.20.15-alpha-53-SNAPSHOT UTF-8 From c82d3ec7b31cdf0ec881b643d1935d3d26990caf Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Mon, 18 Nov 2024 16:16:54 -0700 Subject: [PATCH 05/13] Adding new version of shared --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index dc3a009c..b99e11ef 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.21.8-alpha-159-SNAPSHOT + 7.21.9-alpha-161-SNAPSHOT ${project.version} From fc8bdca1181da5404dbf842bc71a32076bc5f7ff Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Mon, 18 Nov 2024 23:19:49 +0000 Subject: [PATCH 06/13] [CI Pipeline] Released Snapshot version: 2.20.16-alpha-54-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 055d7304..e2bc0639 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-core - 2.20.15-alpha-53-SNAPSHOT + 2.20.16-alpha-54-SNAPSHOT UTF-8 From 0ce46c442dedb0c443465c97ac89cde4089048f9 Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Tue, 19 Nov 2024 15:53:51 -0700 Subject: [PATCH 07/13] Adding in new shared --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 055d7304..5c34f321 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.21.9-alpha-161-SNAPSHOT + 7.21.10-alpha-163-SNAPSHOT ${project.version} From 63a2cb99570349896ae704963ee6be72ff0452a8 Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Tue, 19 Nov 2024 22:56:02 +0000 Subject: [PATCH 08/13] [CI Pipeline] Released Snapshot version: 2.20.17-alpha-56-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 03fb72b3..d779821a 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-core - 2.20.16-alpha-54-SNAPSHOT + 2.20.17-alpha-56-SNAPSHOT UTF-8 From 2986ca1094363abd68e7644f75587d5a6f4e9a19 Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Wed, 20 Nov 2024 10:02:16 -0700 Subject: [PATCH 09/13] Removing the outdated google dep in core --- pom.xml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pom.xml b/pom.xml index 03fb72b3..982ef79a 100644 --- a/pom.xml +++ b/pom.xml @@ -97,11 +97,6 @@ vertx-web-client ${vertx.version} - - com.google.auth - google-auth-library-oauth2-http - 1.23.0 - io.vertx vertx-micrometer-metrics From ba5bce0ac23c7993e95a60c3fdef7e04a84049bc Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Wed, 20 Nov 2024 17:04:45 +0000 Subject: [PATCH 10/13] [CI Pipeline] Released Snapshot version: 2.20.18-alpha-57-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 572f3189..7b911b24 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-core - 2.20.17-alpha-56-SNAPSHOT + 2.20.18-alpha-57-SNAPSHOT UTF-8 From f1224653645911d8c5dc95c8399bcde79b4568d3 Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Wed, 20 Nov 2024 11:22:03 -0700 Subject: [PATCH 11/13] Upgrading shared --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 572f3189..7a6a034f 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.21.10-alpha-163-SNAPSHOT + 7.21.12-alpha-165-SNAPSHOT ${project.version} From d8f167d57b3d95ed7fa63bb89cc3e4a0baec70e8 Mon Sep 17 00:00:00 2001 From: Release Workflow Date: Wed, 20 Nov 2024 18:25:26 +0000 Subject: [PATCH 12/13] [CI Pipeline] Released Snapshot version: 2.20.19-alpha-58-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e57c3d08..2c2b412f 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.uid2 uid2-core - 2.20.18-alpha-57-SNAPSHOT + 2.20.19-alpha-58-SNAPSHOT UTF-8 From 3224d44e3805f5624df089b5a5ae666044498115 Mon Sep 17 00:00:00 2001 From: Cody Constine Date: Wed, 20 Nov 2024 14:36:46 -0700 Subject: [PATCH 13/13] Final shared version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e57c3d08..847daff0 100644 --- a/pom.xml +++ b/pom.xml @@ -24,7 +24,7 @@ com.uid2.core.vertx.CoreVerticle io.vertx.core.Launcher - 7.21.12-alpha-165-SNAPSHOT + 8.0.0 ${project.version}