diff options
-rw-r--r-- | cloud-tenant-cd/src/main/java/ai/vespa/hosted/cd/cloud/impl/VespaTestRuntimeProvider.java | 1 | ||||
-rw-r--r-- | tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java | 6 |
2 files changed, 7 insertions, 0 deletions
diff --git a/cloud-tenant-cd/src/main/java/ai/vespa/hosted/cd/cloud/impl/VespaTestRuntimeProvider.java b/cloud-tenant-cd/src/main/java/ai/vespa/hosted/cd/cloud/impl/VespaTestRuntimeProvider.java index f6b537da5fa..96a26a05186 100644 --- a/cloud-tenant-cd/src/main/java/ai/vespa/hosted/cd/cloud/impl/VespaTestRuntimeProvider.java +++ b/cloud-tenant-cd/src/main/java/ai/vespa/hosted/cd/cloud/impl/VespaTestRuntimeProvider.java @@ -14,4 +14,5 @@ public class VespaTestRuntimeProvider extends AbstractComponent implements TestR VespaTestRuntime vespaTestRuntime = new VespaTestRuntime(config); updateReference(vespaTestRuntime); } + } diff --git a/tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java b/tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java index 5317cf01e21..590f49f0124 100644 --- a/tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java +++ b/tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java @@ -4,6 +4,7 @@ package ai.vespa.hosted.cd.commons; import javax.net.ssl.SSLContext; import java.net.http.HttpRequest; import java.security.NoSuchAlgorithmException; +import java.util.List; import java.util.Map; /** @@ -28,6 +29,11 @@ public interface EndpointAuthenticator { /** Adds necessary authentication data to the given HTTP request builder, to pass the data plane of a Vespa endpoint. */ default HttpRequest.Builder authenticated(HttpRequest.Builder request) { + Map<String, List<String>> headers = request.build().headers().map(); + authorizationHeaders().forEach((name, value) -> { + if ( ! headers.containsKey(name)) + request.setHeader(name, value); + }); return request; } |