From 6a5ca585a1e872b64133f57dfd6840015d1f45a2 Mon Sep 17 00:00:00 2001 From: Henrique Dias Date: Thu, 13 Nov 2025 15:52:05 +0100 Subject: [PATCH] fix: auth --- http/auth.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/http/auth.go b/http/auth.go index de5c29ff..2e4518f0 100644 --- a/http/auth.go +++ b/http/auth.go @@ -69,15 +69,19 @@ func withUser(fn handleFunc) handleFunc { var tk authToken token, err := request.ParseFromRequest(r, &extractor{}, keyFunc, request.WithClaims(&tk)) - if err != nil || !token.Valid { return http.StatusUnauthorized, nil } - expired := !tk.VerifyExpiresAt(time.Now().Add(time.Hour), true) + err = jwt.NewValidator(jwt.WithExpirationRequired()).Validate(tk) + if err != nil { + return http.StatusUnauthorized, nil + } + + expiresSoon := tk.ExpiresAt != nil && time.Until(tk.ExpiresAt.Time) < time.Hour updated := tk.IssuedAt != nil && tk.IssuedAt.Unix() < d.store.Users.LastUpdate(tk.User.ID) - if expired || updated { + if expiresSoon || updated { w.Header().Add("X-Renew-Token", "true") }