From 965fa4e61709e7bbf971a4cd0c75b5f8efef87ef Mon Sep 17 00:00:00 2001 From: Christian Schaible Date: Thu, 10 Oct 2024 07:12:28 +0200 Subject: [PATCH] Filter :authority gRPC header --- audit/api/model.go | 4 ++-- audit/api/model_test.go | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/audit/api/model.go b/audit/api/model.go index aa83d36..00b9c6a 100644 --- a/audit/api/model.go +++ b/audit/api/model.go @@ -603,12 +603,12 @@ func byteArrayToPbStruct(bytes []byte) (*structpb.Struct, error) { return structpb.NewStruct(bodyMap) } -// FilterAndMergeHeaders filters the "Authorization" and "B3" headers as well as +// FilterAndMergeHeaders filters ":authority", "Authorization" and "B3" headers as well as // all headers starting with the prefixes "X-" and "STACKIT-". // Headers are merged if there is more than one value for a given name. func FilterAndMergeHeaders(headers map[string][]string) map[string]string { var resultMap = make(map[string]string) - skipHeaders := []string{"authorization", "b3"} + skipHeaders := []string{":authority", "authorization", "b3"} skipPrefixHeaders := []string{"x-", "stackit-"} if len(headers) == 0 { diff --git a/audit/api/model_test.go b/audit/api/model_test.go index ab83b88..244b613 100644 --- a/audit/api/model_test.go +++ b/audit/api/model_test.go @@ -366,6 +366,7 @@ func Test_FilterAndMergeRequestHeaders(t *testing.T) { headers := make(map[string][]string) headers["Authorization"] = []string{"ey..."} headers["B3"] = []string{"80f198ee56343ba864fe8b2a57d3eff7-e457b5a2e4d86bd1-1-05e3ac9a4f6e3b90"} + headers[":authority"] = []string{"localhost:9090"} filteredHeaders := FilterAndMergeHeaders(headers) assert.Equal(t, 0, len(filteredHeaders))