MCPcopy Create free account
hub / github.com/brimdata/super / Middleware

Method Middleware

service/auth.go:72–88  ·  view source on GitHub ↗
(next func(*Core, *ResponseWriter, *Request))

Source from the content-addressed store, hash-verified

70}
71
72func (a *Auth0Authenticator) Middleware(next func(*Core, *ResponseWriter, *Request)) func(*Core, *ResponseWriter, *Request) {
73 return func(c *Core, w *ResponseWriter, r *Request) {
74 token, ident, err := a.validator.ValidateRequest(r.Request)
75 if err != nil {
76 a.unauthorized.Inc()
77 a.logger.Info("Unauthorized request",
78 zap.String("request_id", api.RequestIDFromContext(r.Context())),
79 zap.Error(err))
80 w.Error(err)
81 return
82 }
83 ctx := auth.ContextWithAuthToken(r.Context(), token)
84 ctx = auth.ContextWithIdentity(ctx, ident)
85 r.Request = r.WithContext(ctx)
86 next(c, w, r)
87 }
88}
89
90func (a *Auth0Authenticator) MethodResponse() api.AuthMethodResponse {
91 return a.methodResponse

Callers 1

authhandleMethod · 0.80

Calls 7

RequestIDFromContextFunction · 0.92
ContextWithAuthTokenFunction · 0.92
ContextWithIdentityFunction · 0.92
ValidateRequestMethod · 0.80
ContextMethod · 0.80
StringMethod · 0.65
ErrorMethod · 0.45

Tested by

no test coverage detected