This repository has been archived on 2024-04-07. You can view files and clone it, but cannot push or open issues or pull requests.
summer-utils/claims/auth/access.go
2023-04-16 11:56:17 +01:00

24 lines
575 B
Go

package auth
import (
"code.mrmelon54.com/melon/summer/pkg/claims"
"github.com/mrmelon54/mjwt"
"time"
)
type AccessTokenClaims struct {
UserId uint64 `json:"uid"`
Perms *claims.PermStorage `json:"per"`
}
func (a AccessTokenClaims) Valid() error { return nil }
func (a AccessTokenClaims) Type() string { return "access-token" }
func CreateAccessToken(p mjwt.Provider, sub, id string, userId uint64, perms *claims.PermStorage) (string, error) {
return p.GenerateJwt(sub, id, time.Minute*15, &AccessTokenClaims{
UserId: userId,
Perms: perms,
})
}