From 279f5037020e454dcd376a41406d3f36dd948ab7 Mon Sep 17 00:00:00 2001 From: Tit Petric Date: Thu, 23 Aug 2018 13:03:42 +0000 Subject: [PATCH] add(auth): optional jwt debug key on startup --- auth/flags.go | 2 ++ auth/jwt.go | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/auth/flags.go b/auth/flags.go index 18dce24c0..d5f05e91c 100644 --- a/auth/flags.go +++ b/auth/flags.go @@ -9,6 +9,7 @@ type ( configuration struct { jwtSecret string jwtExpiry int64 + jwtDebug bool } ) @@ -26,4 +27,5 @@ func (c configuration) validate() error { func Flags(_ ...string) { flag.StringVar(&config.jwtSecret, "auth-jwt-secret", "", "JWT Secret") flag.Int64Var(&config.jwtExpiry, "auth-jwt-expiry", 3600, "JWT Expiration in minutes") + flag.BoolVar(&config.jwtDebug, "auth-jwt-debug", false, "Generate debug JWT key") } diff --git a/auth/jwt.go b/auth/jwt.go index e2c35ef5c..b9e631360 100644 --- a/auth/jwt.go +++ b/auth/jwt.go @@ -3,6 +3,7 @@ package auth import ( "github.com/go-chi/jwtauth" "github.com/titpetric/factory/resputil" + "log" "net/http" "strconv" "time" @@ -19,6 +20,10 @@ func JWT() (*jwt, error) { jwt := &jwt{tokenAuth: jwtauth.New("HS256", []byte(config.jwtSecret), nil)} + if config.jwtDebug { + log.Println("DEBUG JWT TOKEN:", jwt.Encode(NewIdentity(1))) + } + return jwt, nil }