add jwt creating and parsing
This commit is contained in:
20
internal/jwt/signer_HS256.go
Normal file
20
internal/jwt/signer_HS256.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package jwt
|
||||
|
||||
import "github.com/golang-jwt/jwt/v5"
|
||||
|
||||
type HMACSigner struct {
|
||||
secret []byte
|
||||
}
|
||||
|
||||
func NewHMACSigner(secret []byte) *HMACSigner {
|
||||
return &HMACSigner{secret: secret}
|
||||
}
|
||||
|
||||
func (s *HMACSigner) Sign(claims jwt.Claims) (string, error) {
|
||||
t := jwt.NewWithClaims(jwt.SigningMethodHS256, claims)
|
||||
return t.SignedString(s.secret)
|
||||
}
|
||||
|
||||
func (s *HMACSigner) Verify(tokenStr string) (jwt.Claims, error) {
|
||||
return parse(tokenStr, jwt.SigningMethodHS256, s.secret)
|
||||
}
|
||||
Reference in New Issue
Block a user