diff options
Diffstat (limited to 'app')
| -rw-r--r-- | app/app.go | 1 | ||||
| -rw-r--r-- | app/middleware/from_custom_header.go | 9 | ||||
| -rw-r--r-- | app/middleware/id_token.go | 2 |
3 files changed, 10 insertions, 2 deletions
@@ -43,6 +43,7 @@ func New(rootDir string) http.Handler { middleware.IDToken( ioc.MustResolve[*oidc.Provider](ioc.Default), ioc.MustResolve[*oidc.Config](ioc.Default), + middleware.FromCustomHeader("x-jwt-payload"), middleware.FromCookie(cfg.IDTokenCookie), ), middleware.User(users), diff --git a/app/middleware/from_custom_header.go b/app/middleware/from_custom_header.go new file mode 100644 index 0000000..f385911 --- /dev/null +++ b/app/middleware/from_custom_header.go @@ -0,0 +1,9 @@ +package middleware + +import "net/http" + +func FromCustomHeader(name string) TokenParser { + return func(r *http.Request) RawToken { + return RawToken(r.Header.Get(name)) + } +} diff --git a/app/middleware/id_token.go b/app/middleware/id_token.go index bc6a05e..8084af0 100644 --- a/app/middleware/id_token.go +++ b/app/middleware/id_token.go @@ -14,8 +14,6 @@ import ( func IDToken(provider *oidc.Provider, config *oidc.Config, parsers ...TokenParser) func(http.Handler) http.Handler { return func(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - log.WithFields(r.Context(), log.Fields{"jwt": r.Header.Get("x-jwt-payload")}) - for _, parser := range parsers { rawIDToken := parser(r) if x.IsPresent(rawIDToken) { |
