From f21bc7bb9a82378e8b24f72c66dfd23bc8113f20 Mon Sep 17 00:00:00 2001 From: Cao Shufeng Date: Thu, 6 Jul 2017 15:04:11 +0800 Subject: [PATCH] Fix Audit-ID header key Now http header key "Audit-ID" doesn't have effect, because golang automaticly transforms "Audit-ID" into "Audit-Id". This change use http.Header.Get() function to canonicalize "Audit-ID" to "Audit-Id". --- staging/src/k8s.io/apiserver/pkg/audit/request.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/staging/src/k8s.io/apiserver/pkg/audit/request.go b/staging/src/k8s.io/apiserver/pkg/audit/request.go index 0a1c088a7ce..26807485c60 100644 --- a/staging/src/k8s.io/apiserver/pkg/audit/request.go +++ b/staging/src/k8s.io/apiserver/pkg/audit/request.go @@ -50,9 +50,9 @@ func NewEventFromRequest(req *http.Request, level auditinternal.Level, attribs a // prefer the id from the headers. If not available, create a new one. // TODO(audit): do we want to forbid the header for non-front-proxy users? - ids := req.Header[auditinternal.HeaderAuditID] - if len(ids) > 0 { - ev.AuditID = types.UID(ids[0]) + ids := req.Header.Get(auditinternal.HeaderAuditID) + if ids != "" { + ev.AuditID = types.UID(ids) } else { ev.AuditID = types.UID(uuid.NewRandom().String()) }