improve jwt related logging

This commit is contained in:
Christoph Kluge
2026-07-30 11:23:24 +02:00
parent 1bd3f25371
commit 2cddbdc896
3 changed files with 14 additions and 14 deletions
+4 -4
View File
@@ -102,18 +102,18 @@ func (ja *JWTAuthenticator) AuthViaJWT(
token, err := jwt.Parse(rawtoken, func(t *jwt.Token) (any, error) { token, err := jwt.Parse(rawtoken, func(t *jwt.Token) (any, error) {
if t.Method != jwt.SigningMethodEdDSA { if t.Method != jwt.SigningMethodEdDSA {
return nil, errors.New("only Ed25519/EdDSA supported") return nil, errors.New("JWT Auth: only Ed25519/EdDSA supported")
} }
return ja.publicKey, nil return ja.publicKey, nil
}) })
if err != nil { if err != nil {
cclog.Warn("Error while parsing JWT token") cclog.Warnf("JWT Auth: error while parsing token: %s", err.Error())
return nil, err return nil, err
} }
if !token.Valid { if !token.Valid {
cclog.Warn("jwt token claims are not valid") cclog.Warn("JWT Auth: token claims are not valid")
return nil, errors.New("jwt token claims are not valid") return nil, errors.New("JWT Auth: token claims are not valid")
} }
// Token is valid, extract payload // Token is valid, extract payload
+5 -5
View File
@@ -124,7 +124,7 @@ func (ja *JWTCookieSessionAuthenticator) Login(
unverified, _, perr := parser.ParseUnverified(rawtoken, jwt.MapClaims{}) unverified, _, perr := parser.ParseUnverified(rawtoken, jwt.MapClaims{})
if perr != nil { if perr != nil {
cclog.Warn("JWT cookie session: error while parsing token") cclog.Warnf("JWT cookie session: error while parsing unverified token: %s", err.Error())
return nil, perr return nil, perr
} }
issuer, _ := unverified.Claims.(jwt.MapClaims)["iss"].(string) issuer, _ := unverified.Claims.(jwt.MapClaims)["iss"].(string)
@@ -136,18 +136,18 @@ func (ja *JWTCookieSessionAuthenticator) Login(
case "": case "":
key = ja.publicKey key = ja.publicKey
default: default:
return nil, fmt.Errorf("untrusted JWT issuer: %q", issuer) return nil, fmt.Errorf("JWT cookie session: untrusted issuer: %q", issuer)
} }
token, err := parser.Parse(rawtoken, func(*jwt.Token) (any, error) { return key, nil }) token, err := parser.Parse(rawtoken, func(*jwt.Token) (any, error) { return key, nil })
if err != nil { if err != nil {
cclog.Warn("JWT cookie session: error while parsing token") cclog.Warnf("JWT cookie session: error while parsing token: %s", err.Error())
return nil, err return nil, err
} }
if !token.Valid { if !token.Valid {
cclog.Warn("jwt token claims are not valid") cclog.Warn("JWT cookie session: token claims are not valid")
return nil, errors.New("jwt token claims are not valid") return nil, errors.New("JWT cookie session: token claims are not valid")
} }
claims := token.Claims.(jwt.MapClaims) claims := token.Claims.(jwt.MapClaims)
+5 -5
View File
@@ -69,20 +69,20 @@ func (ja *JWTSessionAuthenticator) Login(
// Init() already refuses to register without a key, so this should // Init() already refuses to register without a key, so this should
// never trigger, but guard explicitly rather than trust the chain. // never trigger, but guard explicitly rather than trust the chain.
if len(ja.loginTokenKey) == 0 { if len(ja.loginTokenKey) == 0 {
return nil, errors.New("HS login key not configured") return nil, errors.New("JWT Session: HS login key not configured")
} }
return ja.loginTokenKey, nil return ja.loginTokenKey, nil
} }
return nil, fmt.Errorf("unkown signing method for login token: %s (known: HS256, HS512, EdDSA)", t.Method.Alg()) return nil, fmt.Errorf("JWT Session: unkown signing method for login token: %s (known: HS256, HS512, EdDSA)", t.Method.Alg())
}) })
if err != nil { if err != nil {
cclog.Warn("Error while parsing jwt token") cclog.Warnf("JWT Session: error while parsing token: %s", err.Error())
return nil, err return nil, err
} }
if !token.Valid { if !token.Valid {
cclog.Warn("jwt token claims are not valid") cclog.Warn("JWT Session: token claims are not valid")
return nil, errors.New("jwt token claims are not valid") return nil, errors.New("JWT Session: token claims are not valid")
} }
claims := token.Claims.(jwt.MapClaims) claims := token.Claims.(jwt.MapClaims)