summaryrefslogtreecommitdiffstats
path: root/tenant-cd-commons
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2022-05-04 16:14:07 +0200
committerjonmv <venstad@gmail.com>2022-05-04 16:14:07 +0200
commit565de130d7a7a176d6658cce756288831ec3f387 (patch)
treecf0dbf1fd70093e587adc4444bf853c73b7f2dfb /tenant-cd-commons
parent31856c1e4e1897f725bea9f6eadb3d846787ec0f (diff)
Move use of auth headers up
Diffstat (limited to 'tenant-cd-commons')
-rw-r--r--tenant-cd-commons/src/main/java/ai/vespa/hosted/cd/commons/EndpointAuthenticator.java6
1 files changed, 6 insertions, 0 deletions
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;
}