From 99574f365328af2460f721a129a87a9d94a87592 Mon Sep 17 00:00:00 2001 From: Emily Casey Date: Tue, 23 Jun 2020 17:52:51 -0400 Subject: [PATCH] pass-through exact vault authentication method case instead of standardizing case Signed-off-by: Emily Casey --- .../VaultBindingsPropertiesProcessor.java | 7 +++---- .../boot/VaultPropertiesProcessorTest.java | 20 +++++++++---------- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/main/java/org/springframework/cloud/bindings/boot/VaultBindingsPropertiesProcessor.java b/src/main/java/org/springframework/cloud/bindings/boot/VaultBindingsPropertiesProcessor.java index 11032a6..63d0393 100644 --- a/src/main/java/org/springframework/cloud/bindings/boot/VaultBindingsPropertiesProcessor.java +++ b/src/main/java/org/springframework/cloud/bindings/boot/VaultBindingsPropertiesProcessor.java @@ -45,13 +45,12 @@ public final class VaultBindingsPropertiesProcessor implements BindingsPropertie map.from("uri").to("spring.cloud.vault.uri"); map.from("namespace").to("spring.cloud.vault.namespace"); // vault enterprise feature - String method = binding.getSecret().get("method"); - if (method == null) { + String authenticationMethod = binding.getSecret().get("method"); + if (authenticationMethod == null) { return; } - String authenticationMethod = method.toUpperCase(); properties.put("spring.cloud.vault.authentication", authenticationMethod); - switch (authenticationMethod) { + switch (authenticationMethod.toUpperCase()) { case "TOKEN": case "CUBBYHOLE": map.from("token").to("spring.cloud.vault.token"); diff --git a/src/test/java/org/springframework/cloud/bindings/boot/VaultPropertiesProcessorTest.java b/src/test/java/org/springframework/cloud/bindings/boot/VaultPropertiesProcessorTest.java index 6318873..16d0553 100644 --- a/src/test/java/org/springframework/cloud/bindings/boot/VaultPropertiesProcessorTest.java +++ b/src/test/java/org/springframework/cloud/bindings/boot/VaultPropertiesProcessorTest.java @@ -155,7 +155,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "TOKEN") + .containsEntry("spring.cloud.vault.authentication", "token") .containsEntry("spring.cloud.vault.token", "test-token"); } @@ -166,7 +166,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "APPROLE") + .containsEntry("spring.cloud.vault.authentication", "approle") .containsEntry("spring.cloud.vault.app-role.role-id", "test-role-id") .containsEntry("spring.cloud.vault.app-role.secret-id", "test-secret-id") .containsEntry("spring.cloud.vault.app-role.role", "test-role") @@ -180,7 +180,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "CUBBYHOLE") + .containsEntry("spring.cloud.vault.authentication", "cubbyhole") .containsEntry("spring.cloud.vault.token", "test-token"); } @@ -191,7 +191,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "CERT") + .containsEntry("spring.cloud.vault.authentication", "cert") .containsEntry("spring.cloud.vault.ssl.key-store", "test-path/secret/keystore.jks") .containsEntry("spring.cloud.vault.ssl.key-store-password", "test-key-store-password") .containsEntry("spring.cloud.vault.ssl.cert-auth-path", "test-cert-auth-path"); @@ -204,7 +204,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "AWS_EC2") + .containsEntry("spring.cloud.vault.authentication", "aws_ec2") .containsEntry("spring.cloud.vault.aws-ec2.role", "test-role") .containsEntry("spring.cloud.vault.aws-ec2.aws-ec2-path", "test-aws-ec2-path") .containsEntry("spring.cloud.vault.aws-ec2.identity-document", "test-identity-document") @@ -218,7 +218,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "AWS_IAM") + .containsEntry("spring.cloud.vault.authentication", "aws_iam") .containsEntry("spring.cloud.vault.aws-iam.role", "test-role") .containsEntry("spring.cloud.vault.aws-iam.aws-path", "test-aws-path") .containsEntry("spring.cloud.vault.aws-iam.server-id", "test-server-id") @@ -232,7 +232,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "AZURE_MSI") + .containsEntry("spring.cloud.vault.authentication", "azure_msi") .containsEntry("spring.cloud.vault.azure-msi.role", "test-role") .containsEntry("spring.cloud.vault.azure-msi.azure-path", "test-azure-path"); } @@ -244,7 +244,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "GCP_GCE") + .containsEntry("spring.cloud.vault.authentication", "gcp_gce") .containsEntry("spring.cloud.vault.gcp-gce.role", "test-role") .containsEntry("spring.cloud.vault.gcp-gce.gcp-path", "test-gcp-path") .containsEntry("spring.cloud.vault.gcp-gce.service-account", "test-service-account"); @@ -257,7 +257,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "GCP_IAM") + .containsEntry("spring.cloud.vault.authentication", "gcp_iam") .containsEntry("spring.cloud.vault.gcp-iam.role", "test-role") .containsEntry("spring.cloud.vault.gcp-iam.credentials.location", "test-path/secret/credentials.json") .containsEntry("spring.cloud.vault.gcp-iam.credentials.encoded-key", "test-encoded-key") @@ -274,7 +274,7 @@ final class VaultPropertiesProcessorTest { assertThat(properties) .containsEntry("spring.cloud.vault.uri", "test-uri") .containsEntry("spring.cloud.vault.namespace", "test-namespace") - .containsEntry("spring.cloud.vault.authentication", "KUBERNETES") + .containsEntry("spring.cloud.vault.authentication", "kubernetes") .containsEntry("spring.cloud.vault.kubernetes.role", "test-role") .containsEntry("spring.cloud.vault.kubernetes.kubernetes-path", "test-kubernetes-path"); }