From 0a53e787f907612dc7c4e0777135cda90ff33bc6 Mon Sep 17 00:00:00 2001 From: Dimas Restu H Date: Fri, 22 Apr 2022 15:33:07 +0700 Subject: [PATCH] add capabilitied JWT with no expiration --- internal/auth/auth.go | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/internal/auth/auth.go b/internal/auth/auth.go index a2fdebc..688e40c 100644 --- a/internal/auth/auth.go +++ b/internal/auth/auth.go @@ -23,14 +23,26 @@ func Auth(c echo.Context) error { _ = json.NewDecoder(c.Request().Body).Decode(&reqAuthBasicInfo) // Create JWT Claims - jwtClaims := &typAuth.AuthJWTClaims{ - typAuth.AuthJWTClaimsPayload{ - JID: reqAuthBasicInfo.Username, - }, - jwt.StandardClaims{ - IssuedAt: time.Now().Unix(), - ExpiresAt: time.Now().Add(time.Hour * time.Duration(auth.AuthJWTExpiredHour)).Unix(), - }, + var jwtClaims *typAuth.AuthJWTClaims + if auth.AuthJWTExpiredHour > 0 { + jwtClaims = &typAuth.AuthJWTClaims{ + typAuth.AuthJWTClaimsPayload{ + JID: reqAuthBasicInfo.Username, + }, + jwt.StandardClaims{ + IssuedAt: time.Now().Unix(), + ExpiresAt: time.Now().Add(time.Hour * time.Duration(auth.AuthJWTExpiredHour)).Unix(), + }, + } + } else { + jwtClaims = &typAuth.AuthJWTClaims{ + typAuth.AuthJWTClaimsPayload{ + JID: reqAuthBasicInfo.Username, + }, + jwt.StandardClaims{ + IssuedAt: time.Now().Unix(), + }, + } } // Create JWT Token