Skip to content

Commit 86d5fb7

Browse files
authored
[release-1.15] Make auth package independent of eventpolicy informer (#8374)
Make auth package independent of eventpolicy informer
1 parent 20e5495 commit 86d5fb7

File tree

7 files changed

+16
-11
lines changed

7 files changed

+16
-11
lines changed

cmd/broker/filter/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
"github.com/google/uuid"
2525
"github.com/kelseyhightower/envconfig"
2626
"go.uber.org/zap"
27+
eventpolicyinformer "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy"
2728
kubeclient "knative.dev/pkg/client/injection/kube/client"
2829
configmapinformer "knative.dev/pkg/client/injection/kube/informers/core/v1/configmap/filtered"
2930
filteredFactory "knative.dev/pkg/client/injection/kube/informers/factory/filtered"
@@ -151,7 +152,7 @@ func main() {
151152
oidcTokenProvider := auth.NewOIDCTokenProvider(ctx)
152153
// We are running both the receiver (takes messages in from the Broker) and the dispatcher (send
153154
// the messages to the triggers' subscribers) in this binary.
154-
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx)
155+
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx, eventpolicyinformer.Get(ctx).Lister())
155156
trustBundleConfigMapInformer := configmapinformer.Get(ctx, eventingtls.TrustBundleLabelSelector).Lister().ConfigMaps(system.Namespace())
156157
handler, err = filter.NewHandler(logger, oidcTokenVerifier, oidcTokenProvider, triggerinformer.Get(ctx), brokerinformer.Get(ctx), reporter, trustBundleConfigMapInformer, ctxFunc)
157158
if err != nil {

cmd/broker/ingress/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727
"github.com/google/uuid"
2828
"github.com/kelseyhightower/envconfig"
2929
"go.uber.org/zap"
30+
eventpolicyinformer "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy"
3031
configmapinformer "knative.dev/pkg/client/injection/kube/informers/core/v1/configmap/filtered"
3132

3233
kubeclient "knative.dev/pkg/client/injection/kube/client"
@@ -167,7 +168,7 @@ func main() {
167168
reporter := ingress.NewStatsReporter(env.ContainerName, kmeta.ChildName(env.PodName, uuid.New().String()))
168169

169170
oidcTokenProvider := auth.NewOIDCTokenProvider(ctx)
170-
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx)
171+
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx, eventpolicyinformer.Get(ctx).Lister())
171172
trustBundleConfigMapInformer := configmapinformer.Get(ctx, eventingtls.TrustBundleLabelSelector).Lister().ConfigMaps(system.Namespace())
172173
handler, err = ingress.NewHandler(logger, reporter, broker.TTLDefaulter(logger, int32(env.MaxTTL)), brokerInformer, oidcTokenVerifier, oidcTokenProvider, trustBundleConfigMapInformer, ctxFunc)
173174
if err != nil {

cmd/jobsink/main.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ import (
3535
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3636
"k8s.io/apimachinery/pkg/types"
3737
"k8s.io/client-go/kubernetes"
38+
eventpolicyinformer "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy"
3839
kubeclient "knative.dev/pkg/client/injection/kube/client"
3940
configmap "knative.dev/pkg/configmap/informer"
4041
"knative.dev/pkg/controller"
@@ -118,7 +119,7 @@ func main() {
118119
k8s: kubeclient.Get(ctx),
119120
lister: jobsink.Get(ctx).Lister(),
120121
withContext: ctxFunc,
121-
oidcTokenVerifier: auth.NewOIDCTokenVerifier(ctx),
122+
oidcTokenVerifier: auth.NewOIDCTokenVerifier(ctx, eventpolicyinformer.Get(ctx).Lister()),
122123
}
123124

124125
tlsConfig, err := getServerTLSConfig(ctx)

pkg/auth/token_verifier.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,13 +26,13 @@ import (
2626
"time"
2727

2828
duckv1 "knative.dev/eventing/pkg/apis/duck/v1"
29-
eventpolicyinformer "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy"
3029
"knative.dev/eventing/pkg/client/listers/eventing/v1alpha1"
3130

3231
"github.com/coreos/go-oidc/v3/oidc"
3332
"go.uber.org/zap"
3433
"k8s.io/client-go/rest"
3534
"knative.dev/eventing/pkg/apis/feature"
35+
listerseventingv1alpha1 "knative.dev/eventing/pkg/client/listers/eventing/v1alpha1"
3636
"knative.dev/pkg/injection"
3737
"knative.dev/pkg/logging"
3838
)
@@ -57,11 +57,11 @@ type IDToken struct {
5757
AccessTokenHash string
5858
}
5959

60-
func NewOIDCTokenVerifier(ctx context.Context) *OIDCTokenVerifier {
60+
func NewOIDCTokenVerifier(ctx context.Context, eventPolicyLister listerseventingv1alpha1.EventPolicyLister) *OIDCTokenVerifier {
6161
tokenHandler := &OIDCTokenVerifier{
6262
logger: logging.FromContext(ctx).With("component", "oidc-token-handler"),
6363
restConfig: injection.GetConfig(ctx),
64-
eventPolicyLister: eventpolicyinformer.Get(ctx).Lister(),
64+
eventPolicyLister: eventPolicyLister,
6565
}
6666

6767
if err := tokenHandler.initOIDCProvider(ctx); err != nil {

pkg/broker/filter/filter_handler_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@ import (
5151

5252
brokerinformerfake "knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/fake"
5353
triggerinformerfake "knative.dev/eventing/pkg/client/injection/informers/eventing/v1/trigger/fake"
54+
eventpolicyinformerfake "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy/fake"
5455

5556
// Fake injection client
56-
_ "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy/fake"
5757
_ "knative.dev/pkg/client/injection/kube/client/fake"
5858
)
5959

@@ -439,7 +439,7 @@ func TestReceiver(t *testing.T) {
439439

440440
logger := zaptest.NewLogger(t, zaptest.WrapOptions(zap.AddCaller()))
441441
oidcTokenProvider := auth.NewOIDCTokenProvider(ctx)
442-
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx)
442+
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx, eventpolicyinformerfake.Get(ctx).Lister())
443443

444444
for _, trig := range tc.triggers {
445445
// Replace the SubscriberURI to point at our fake server.
@@ -638,7 +638,7 @@ func TestReceiver_WithSubscriptionsAPI(t *testing.T) {
638638

639639
logger := zaptest.NewLogger(t, zaptest.WrapOptions(zap.AddCaller()))
640640
oidcTokenProvider := auth.NewOIDCTokenProvider(ctx)
641-
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx)
641+
oidcTokenVerifier := auth.NewOIDCTokenVerifier(ctx, eventpolicyinformerfake.Get(ctx).Lister())
642642

643643
// Replace the SubscriberURI to point at our fake server.
644644
for _, trig := range tc.triggers {

pkg/broker/ingress/ingress_handler_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ import (
4444
"knative.dev/eventing/pkg/broker"
4545

4646
brokerinformerfake "knative.dev/eventing/pkg/client/injection/informers/eventing/v1/broker/fake"
47+
eventpolicyinformerfake "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy/fake"
4748

4849
// Fake injection client
4950
_ "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy/fake"
@@ -290,7 +291,7 @@ func TestHandler_ServeHTTP(t *testing.T) {
290291
}
291292

292293
tokenProvider := auth.NewOIDCTokenProvider(ctx)
293-
tokenVerifier := auth.NewOIDCTokenVerifier(ctx)
294+
tokenVerifier := auth.NewOIDCTokenVerifier(ctx, eventpolicyinformerfake.Get(ctx).Lister())
294295

295296
h, err := NewHandler(logger,
296297
&mockReporter{},

pkg/reconciler/inmemorychannel/dispatcher/controller.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
"context"
2121
"time"
2222

23+
eventpolicyinformer "knative.dev/eventing/pkg/client/injection/informers/eventing/v1alpha1/eventpolicy"
2324
"knative.dev/pkg/injection"
2425
"knative.dev/pkg/system"
2526

@@ -136,7 +137,7 @@ func NewController(
136137
eventingClient: eventingclient.Get(ctx).EventingV1beta2(),
137138
eventTypeLister: eventtypeinformer.Get(ctx).Lister(),
138139
eventDispatcher: kncloudevents.NewDispatcher(clientConfig, oidcTokenProvider),
139-
tokenVerifier: auth.NewOIDCTokenVerifier(ctx),
140+
tokenVerifier: auth.NewOIDCTokenVerifier(ctx, eventpolicyinformer.Get(ctx).Lister()),
140141
clientConfig: clientConfig,
141142
}
142143

0 commit comments

Comments
 (0)