internal/auth: add TenantChannelMiddleware
Extracts the tenant from the JWT and sets it in the request context.
This commit is contained in:
parent
bec17b6d47
commit
0f946e1c9e
4 changed files with 50 additions and 11 deletions
|
|
@ -19,6 +19,7 @@ import (
|
|||
|
||||
"github.com/osbuild/osbuild-composer/pkg/jobqueue"
|
||||
|
||||
"github.com/osbuild/osbuild-composer/internal/auth"
|
||||
"github.com/osbuild/osbuild-composer/internal/blueprint"
|
||||
"github.com/osbuild/osbuild-composer/internal/common"
|
||||
"github.com/osbuild/osbuild-composer/internal/container"
|
||||
|
|
@ -90,8 +91,14 @@ func (s *Server) Handler(path string) http.Handler {
|
|||
server: s,
|
||||
}
|
||||
|
||||
statusMW := prometheus.StatusMiddleware(prometheus.ComposerSubsystem)
|
||||
RegisterHandlers(e.Group(path, prometheus.MetricsMiddleware, s.ValidateRequest, statusMW), &handler)
|
||||
mws := []echo.MiddlewareFunc{
|
||||
prometheus.StatusMiddleware(prometheus.ComposerSubsystem),
|
||||
}
|
||||
if s.config.JWTEnabled {
|
||||
mws = append(mws, auth.TenantChannelMiddleware(s.config.TenantProviderFields, HTTPError(ErrorTenantNotFound)))
|
||||
}
|
||||
mws = append(mws, prometheus.MetricsMiddleware, s.ValidateRequest)
|
||||
RegisterHandlers(e.Group(path, mws...), &handler)
|
||||
|
||||
return e
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue