BE-MiniERP/modules/auth/service/jwt.go

22 lines
455 B
Go

package service
import (
"BE-MiniERP/config"
"time"
"github.com/golang-jwt/jwt/v4"
)
func GenerateJWT(userID uint, role string) (string, error) {
claims := jwt.MapClaims{
"user_id": userID,
"role": role,
"exp": time.Now().Add(time.Hour * 24).Unix(), // expired dalam 1 jam
}
token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims)
// INI PALING PENTING ⬇️
return token.SignedString([]byte(config.GetConfig().JWTSecret))
}