diff --git a/plugin/pkg/authenticator/token/webhook/webhook.go b/plugin/pkg/authenticator/token/webhook/webhook.go index 9105eb7b8..bbc8eef51 100644 --- a/plugin/pkg/authenticator/token/webhook/webhook.go +++ b/plugin/pkg/authenticator/token/webhook/webhook.go @@ -99,7 +99,7 @@ func (w *WebhookTokenAuthenticator) AuthenticateToken(ctx context.Context, token auds authenticator.Audiences ) webhook.WithExponentialBackoff(ctx, w.initialBackoff, func() error { - result, err = w.tokenReview.Create(r) + result, err = w.tokenReview.CreateContext(ctx, r) return err }) if err != nil { @@ -171,7 +171,11 @@ type tokenReviewClient struct { } func (t *tokenReviewClient) Create(tokenReview *authentication.TokenReview) (*authentication.TokenReview, error) { + return t.CreateContext(context.Background(), tokenReview) +} + +func (t *tokenReviewClient) CreateContext(ctx context.Context, tokenReview *authentication.TokenReview) (*authentication.TokenReview, error) { result := &authentication.TokenReview{} - err := t.w.RestClient.Post().Body(tokenReview).Do().Into(result) + err := t.w.RestClient.Post().Context(ctx).Body(tokenReview).Do().Into(result) return result, err } diff --git a/plugin/pkg/authorizer/webhook/webhook.go b/plugin/pkg/authorizer/webhook/webhook.go index eb6f7af17..4006f1ac7 100644 --- a/plugin/pkg/authorizer/webhook/webhook.go +++ b/plugin/pkg/authorizer/webhook/webhook.go @@ -189,7 +189,7 @@ func (w *WebhookAuthorizer) Authorize(ctx context.Context, attr authorizer.Attri err error ) webhook.WithExponentialBackoff(ctx, w.initialBackoff, func() error { - result, err = w.subjectAccessReview.Create(r) + result, err = w.subjectAccessReview.CreateContext(ctx, r) return err }) if err != nil { @@ -265,8 +265,12 @@ type subjectAccessReviewClient struct { } func (t *subjectAccessReviewClient) Create(subjectAccessReview *authorization.SubjectAccessReview) (*authorization.SubjectAccessReview, error) { + return t.CreateContext(context.Background(), subjectAccessReview) +} + +func (t *subjectAccessReviewClient) CreateContext(ctx context.Context, subjectAccessReview *authorization.SubjectAccessReview) (*authorization.SubjectAccessReview, error) { result := &authorization.SubjectAccessReview{} - err := t.w.RestClient.Post().Body(subjectAccessReview).Do().Into(result) + err := t.w.RestClient.Post().Context(ctx).Body(subjectAccessReview).Do().Into(result) return result, err }