mirror of
https://github.com/ClusterCockpit/cc-backend
synced 2026-08-07 22:07:14 +02:00
improve jwt related logging
This commit is contained in:
@@ -102,18 +102,18 @@ func (ja *JWTAuthenticator) AuthViaJWT(
|
||||
|
||||
token, err := jwt.Parse(rawtoken, func(t *jwt.Token) (any, error) {
|
||||
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
|
||||
})
|
||||
if err != nil {
|
||||
cclog.Warn("Error while parsing JWT token")
|
||||
cclog.Warnf("JWT Auth: error while parsing token: %s", err.Error())
|
||||
return nil, err
|
||||
}
|
||||
if !token.Valid {
|
||||
cclog.Warn("jwt token claims are not valid")
|
||||
return nil, errors.New("jwt token claims are not valid")
|
||||
cclog.Warn("JWT Auth: token claims are not valid")
|
||||
return nil, errors.New("JWT Auth: token claims are not valid")
|
||||
}
|
||||
|
||||
// Token is valid, extract payload
|
||||
|
||||
@@ -124,7 +124,7 @@ func (ja *JWTCookieSessionAuthenticator) Login(
|
||||
|
||||
unverified, _, perr := parser.ParseUnverified(rawtoken, jwt.MapClaims{})
|
||||
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
|
||||
}
|
||||
issuer, _ := unverified.Claims.(jwt.MapClaims)["iss"].(string)
|
||||
@@ -136,18 +136,18 @@ func (ja *JWTCookieSessionAuthenticator) Login(
|
||||
case "":
|
||||
key = ja.publicKey
|
||||
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 })
|
||||
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
|
||||
}
|
||||
|
||||
if !token.Valid {
|
||||
cclog.Warn("jwt token claims are not valid")
|
||||
return nil, errors.New("jwt token claims are not valid")
|
||||
cclog.Warn("JWT cookie session: token claims are not valid")
|
||||
return nil, errors.New("JWT cookie session: token claims are not valid")
|
||||
}
|
||||
|
||||
claims := token.Claims.(jwt.MapClaims)
|
||||
|
||||
@@ -69,20 +69,20 @@ func (ja *JWTSessionAuthenticator) Login(
|
||||
// Init() already refuses to register without a key, so this should
|
||||
// never trigger, but guard explicitly rather than trust the chain.
|
||||
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 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 {
|
||||
cclog.Warn("Error while parsing jwt token")
|
||||
cclog.Warnf("JWT Session: error while parsing token: %s", err.Error())
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if !token.Valid {
|
||||
cclog.Warn("jwt token claims are not valid")
|
||||
return nil, errors.New("jwt token claims are not valid")
|
||||
cclog.Warn("JWT Session: token claims are not valid")
|
||||
return nil, errors.New("JWT Session: token claims are not valid")
|
||||
}
|
||||
|
||||
claims := token.Claims.(jwt.MapClaims)
|
||||
|
||||
Reference in New Issue
Block a user