From ea28a21a6790d40c1fe540c64a296c8f0db17c65 Mon Sep 17 00:00:00 2001 From: Tim Allclair Date: Tue, 12 Jul 2022 14:46:27 -0700 Subject: [PATCH] Rename WithAuditID to WithAuditInit --- .../k8s.io/apiserver/pkg/endpoints/apiserver_test.go | 2 +- .../k8s.io/apiserver/pkg/endpoints/filters/audit.go | 2 +- .../filters/{with_auditid.go => audit_init.go} | 12 ++++-------- .../{with_auditid_test.go => audit_init_test.go} | 4 ++-- .../apiserver/pkg/endpoints/filters/audit_test.go | 4 ++-- staging/src/k8s.io/apiserver/pkg/server/config.go | 2 +- .../pkg/server/filters/priority-and-fairness_test.go | 2 +- 7 files changed, 12 insertions(+), 16 deletions(-) rename staging/src/k8s.io/apiserver/pkg/endpoints/filters/{with_auditid.go => audit_init.go} (86%) rename staging/src/k8s.io/apiserver/pkg/endpoints/filters/{with_auditid_test.go => audit_init_test.go} (97%) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/apiserver_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/apiserver_test.go index beb8cddc487..25065736d28 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/apiserver_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/apiserver_test.go @@ -290,7 +290,7 @@ func handleInternal(storage map[string]rest.Storage, admissionControl admission. handler := genericapifilters.WithAudit(mux, auditSink, fakeRuleEvaluator, longRunningCheck) handler = genericapifilters.WithRequestDeadline(handler, auditSink, fakeRuleEvaluator, longRunningCheck, codecs, 60*time.Second) handler = genericapifilters.WithRequestInfo(handler, testRequestInfoResolver()) - handler = genericapifilters.WithAuditID(handler) + handler = genericapifilters.WithAuditInit(handler) return &defaultAPIServer{handler, container} } diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit.go b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit.go index eee1f4fa85b..b310c94ee2a 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit.go @@ -125,7 +125,7 @@ func evaluatePolicyAndCreateAuditEvent(req *http.Request, policy audit.PolicyRul ac := audit.AuditContextFrom(ctx) if ac == nil { // Auditing not enabled. - return ac, nil + return nil, nil } attribs, err := GetAuthorizerAttributes(ctx) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid.go b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init.go similarity index 86% rename from staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid.go rename to staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init.go index b0860137e93..7c9ca8e9266 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init.go @@ -26,21 +26,17 @@ import ( "github.com/google/uuid" ) -// WithAuditID attaches the Audit-ID associated with a request to the context. +// WithAuditInit initializes the audit context and attaches the Audit-ID associated with a request. // // a. If the caller does not specify a value for Audit-ID in the request header, we generate a new audit ID // b. We echo the Audit-ID value to the caller via the response Header 'Audit-ID'. -func WithAuditID(handler http.Handler) http.Handler { - return withAuditID(handler, func() string { +func WithAuditInit(handler http.Handler) http.Handler { + return withAuditInit(handler, func() string { return uuid.New().String() }) } -func withAuditID(handler http.Handler, newAuditIDFunc func() string) http.Handler { - if newAuditIDFunc == nil { - return handler - } - +func withAuditInit(handler http.Handler, newAuditIDFunc func() string) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { ctx := audit.WithAuditContext(r.Context()) r = r.WithContext(ctx) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init_test.go similarity index 97% rename from staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid_test.go rename to staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init_test.go index 813f00bece2..9f08f0cf048 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/with_auditid_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_init_test.go @@ -78,9 +78,9 @@ func TestWithAuditID(t *testing.T) { auditIDGot = string(v) }) - wrapped := WithAuditID(handler) + wrapped := WithAuditInit(handler) if test.newAuditIDFunc != nil { - wrapped = withAuditID(handler, test.newAuditIDFunc) + wrapped = withAuditInit(handler, test.newAuditIDFunc) } testRequest, err := http.NewRequest(http.MethodGet, "/api/v1/namespaces", nil) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_test.go index 47d1ad0da06..5f75c047672 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/filters/audit_test.go @@ -676,7 +676,7 @@ func TestAudit(t *testing.T) { // simplified long-running check return ri.Verb == "watch" }) - handler = WithAuditID(handler) + handler = WithAuditInit(handler) req, _ := http.NewRequest(test.verb, test.path, nil) req = withTestContext(req, &user.DefaultInfo{Name: "admin"}, nil) @@ -812,7 +812,7 @@ func TestAuditIDHttpHeader(t *testing.T) { }) fakeRuleEvaluator := policy.NewFakePolicyRuleEvaluator(test.level, nil) handler = WithAudit(handler, sink, fakeRuleEvaluator, nil) - handler = WithAuditID(handler) + handler = WithAuditInit(handler) req, _ := http.NewRequest("GET", "/api/v1/namespaces/default/pods", nil) req.RemoteAddr = "127.0.0.1" diff --git a/staging/src/k8s.io/apiserver/pkg/server/config.go b/staging/src/k8s.io/apiserver/pkg/server/config.go index f6e6f8afcb8..356039e0820 100644 --- a/staging/src/k8s.io/apiserver/pkg/server/config.go +++ b/staging/src/k8s.io/apiserver/pkg/server/config.go @@ -871,7 +871,7 @@ func DefaultBuildHandlerChain(apiHandler http.Handler, c *Config) http.Handler { handler = genericapifilters.WithRequestReceivedTimestamp(handler) handler = genericapifilters.WithMuxAndDiscoveryComplete(handler, c.lifecycleSignals.MuxAndDiscoveryComplete.Signaled()) handler = genericfilters.WithPanicRecovery(handler, c.RequestInfoResolver) - handler = genericapifilters.WithAuditID(handler) + handler = genericapifilters.WithAuditInit(handler) return handler } diff --git a/staging/src/k8s.io/apiserver/pkg/server/filters/priority-and-fairness_test.go b/staging/src/k8s.io/apiserver/pkg/server/filters/priority-and-fairness_test.go index b6f0818c78e..88e3f9d22ad 100644 --- a/staging/src/k8s.io/apiserver/pkg/server/filters/priority-and-fairness_test.go +++ b/staging/src/k8s.io/apiserver/pkg/server/filters/priority-and-fairness_test.go @@ -1197,7 +1197,7 @@ func newHandlerChain(t *testing.T, handler http.Handler, filter utilflowcontrol. handler = apifilters.WithRequestDeadline(handler, nil, nil, longRunningRequestCheck, nil, requestTimeout) handler = apifilters.WithRequestInfo(handler, requestInfoFactory) handler = WithPanicRecovery(handler, requestInfoFactory) - handler = apifilters.WithAuditID(handler) + handler = apifilters.WithAuditInit(handler) return handler }