Documentation ¶
Index ¶
- Variables
- func ParseUnverified(raw string, claims IJWTClaims) error
- type ClaimsBuilder
- func (c *ClaimsBuilder) Build() *jwt.Claims
- func (c *ClaimsBuilder) ExpiresAfter(d time.Duration) *ClaimsBuilder
- func (c *ClaimsBuilder) GetAudience() jwt.Audience
- func (c *ClaimsBuilder) GetExpiresAfter() *jwt.NumericDate
- func (c *ClaimsBuilder) GetID() string
- func (c *ClaimsBuilder) GetIssuedAt() *jwt.NumericDate
- func (c *ClaimsBuilder) GetIssuer() string
- func (c *ClaimsBuilder) GetNotBefore() *jwt.NumericDate
- func (c *ClaimsBuilder) GetSubject() string
- func (c *ClaimsBuilder) NotUseBefore(d time.Duration) *ClaimsBuilder
- func (c *ClaimsBuilder) WithAudience(audience jwt.Audience) *ClaimsBuilder
- func (c *ClaimsBuilder) WithID(id string) *ClaimsBuilder
- func (c *ClaimsBuilder) WithIssuedAt() *ClaimsBuilder
- func (c *ClaimsBuilder) WithIssuer(issuer string) *ClaimsBuilder
- func (c *ClaimsBuilder) WithSubject(subject string) *ClaimsBuilder
- type ClaimsOption
- type Common
- type EES256JWT
- func (ee EES256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (ee EES256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (ee EES256JWT) Validate(raw string) error
- func (ee EES256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type EHS256JWT
- func (eh EHS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (eh EHS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (eh EHS256JWT) Validate(raw string) error
- func (eh EHS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type EHS384JWT
- func (eh EHS384JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (eh EHS384JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (eh EHS384JWT) Validate(raw string) error
- func (eh EHS384JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type EHS512JWT
- func (eh EHS512JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (eh EHS512JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (eh EHS512JWT) Validate(raw string) error
- func (eh EHS512JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type ERS256JWT
- func (er ERS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (er ERS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (er ERS256JWT) Validate(raw string) error
- func (er ERS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type ES256JWT
- func (e ES256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (e ES256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (e ES256JWT) Validate(raw string) error
- func (e ES256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type HS256JWT
- func (h HS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (h HS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (h HS256JWT) Validate(raw string) error
- func (h HS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type HS384JWT
- func (h HS384JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (h HS384JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (h HS384JWT) Validate(raw string) error
- func (h HS384JWT) VerifyToken(token string, claims IJWTClaims) (err error)
- type IJWT
- type IJWTClaims
- type IJWTExpire
- type RS256JWT
- func (r RS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
- func (r RS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
- func (r RS256JWT) Validate(raw string) error
- func (r RS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
Constants ¶
This section is empty.
Variables ¶
var ( ErrNoKey = errors.New("not provider jwt private/secret key") // ErrTokenExpired variable ErrTokenExpired = errors.New("token is expired") // ErrParsePrivateKey variable ErrParsePrivateKey = errors.New("parse private key error") )
var ( // Now variable Now = time.Now )
Functions ¶
func ParseUnverified ¶
func ParseUnverified(raw string, claims IJWTClaims) error
Types ¶
type ClaimsBuilder ¶
ClaimsBuilder type
func (*ClaimsBuilder) ExpiresAfter ¶
func (c *ClaimsBuilder) ExpiresAfter(d time.Duration) *ClaimsBuilder
ExpiresAfter method
func (*ClaimsBuilder) GetAudience ¶
func (c *ClaimsBuilder) GetAudience() jwt.Audience
GetAudience method
func (*ClaimsBuilder) GetExpiresAfter ¶
func (c *ClaimsBuilder) GetExpiresAfter() *jwt.NumericDate
GetExpiresAfter method
func (*ClaimsBuilder) GetIssuedAt ¶
func (c *ClaimsBuilder) GetIssuedAt() *jwt.NumericDate
GetIssuedAt method
func (*ClaimsBuilder) GetNotBefore ¶
func (c *ClaimsBuilder) GetNotBefore() *jwt.NumericDate
GetNotBefore method
func (*ClaimsBuilder) NotUseBefore ¶
func (c *ClaimsBuilder) NotUseBefore(d time.Duration) *ClaimsBuilder
NotUseBefore method
func (*ClaimsBuilder) WithAudience ¶
func (c *ClaimsBuilder) WithAudience(audience jwt.Audience) *ClaimsBuilder
WithAudience method
func (*ClaimsBuilder) WithID ¶
func (c *ClaimsBuilder) WithID(id string) *ClaimsBuilder
WithID method
func (*ClaimsBuilder) WithIssuedAt ¶
func (c *ClaimsBuilder) WithIssuedAt() *ClaimsBuilder
WithIssuedAt method
func (*ClaimsBuilder) WithIssuer ¶
func (c *ClaimsBuilder) WithIssuer(issuer string) *ClaimsBuilder
WithIssuer method
func (*ClaimsBuilder) WithSubject ¶
func (c *ClaimsBuilder) WithSubject(subject string) *ClaimsBuilder
WithSubject method
type ClaimsOption ¶
type ClaimsOption interface {
Apply(*Common)
}
ClaimsOption interface
func WithPermissions ¶
func WithPermissions(permissions ...string) ClaimsOption
WithPermissions method
func WithRootID ¶ added in v0.0.6
func WithRootID[T generic.ByteSeq](id T) ClaimsOption
WithRootID method
type Common ¶
type Common struct { Secret []byte `json:"s,omitempty"` RootID []byte `json:"root_id,omitempty"` ClientID []byte `json:"client_id,omitempty"` Permissions []string `json:"permissions,omitempty"` Scopes []string `json:"scopes,omitempty"` *jwt.Claims }
Common type
func NewCommon ¶
func NewCommon(claims *jwt.Claims, options ...ClaimsOption) *Common
NewCommon method
func (*Common) ExpiresAfter ¶
func (*Common) GetExpiresAfter ¶
func (c *Common) GetExpiresAfter() *jwt.NumericDate
type EES256JWT ¶
type EES256JWT struct { SigningKey *ecdsa.PrivateKey Sig jose.Signer Enc jose.Encrypter }
EES256JWT type
func NewEES256JWT ¶
NewEES256JWT method
func (EES256JWT) GenerateToken ¶
func (ee EES256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (EES256JWT) RefreshToken ¶
func (ee EES256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (EES256JWT) VerifyToken ¶
func (ee EES256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type EHS256JWT ¶
type EHS256JWT struct { SigningKey []byte Sig jose.Signer Enc jose.Encrypter }
EHS256JWT type
func (EHS256JWT) GenerateToken ¶
func (eh EHS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (EHS256JWT) RefreshToken ¶
func (eh EHS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (EHS256JWT) VerifyToken ¶
func (eh EHS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type EHS384JWT ¶
type EHS384JWT struct { SigningKey []byte Sig jose.Signer Enc jose.Encrypter }
EHS384JWT type
func (EHS384JWT) GenerateToken ¶
func (eh EHS384JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (EHS384JWT) RefreshToken ¶
func (eh EHS384JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (EHS384JWT) VerifyToken ¶
func (eh EHS384JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type EHS512JWT ¶
type EHS512JWT struct { SigningKey []byte Sig jose.Signer Enc jose.Encrypter }
EHS512JWT type
func (EHS512JWT) GenerateToken ¶
func (eh EHS512JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (EHS512JWT) RefreshToken ¶
func (eh EHS512JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (EHS512JWT) VerifyToken ¶
func (eh EHS512JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type ERS256JWT ¶
type ERS256JWT struct { SigningKey *rsa.PrivateKey Sig jose.Signer Enc jose.Encrypter }
ERS256JWT type
func (ERS256JWT) GenerateToken ¶
func (er ERS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (ERS256JWT) RefreshToken ¶
func (er ERS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (ERS256JWT) VerifyToken ¶
func (er ERS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type ES256JWT ¶
type ES256JWT struct { SigningKey *ecdsa.PrivateKey Sig jose.Signer }
ES256JWT type
func (ES256JWT) GenerateToken ¶
func (e ES256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (ES256JWT) RefreshToken ¶
func (e ES256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (ES256JWT) VerifyToken ¶
func (e ES256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type HS256JWT ¶
type HS256JWT struct { SigningKey []byte Sig jose.Signer }
HS256JWT type
func (HS256JWT) GenerateToken ¶
func (h HS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (HS256JWT) RefreshToken ¶
func (h HS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (HS256JWT) VerifyToken ¶
func (h HS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type HS384JWT ¶
type HS384JWT struct { SigningKey []byte Sig jose.Signer }
HS384JWT type
func (HS384JWT) GenerateToken ¶
func (h HS384JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (HS384JWT) RefreshToken ¶
func (h HS384JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (HS384JWT) VerifyToken ¶
func (h HS384JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method
type IJWT ¶
type IJWT interface { GenerateToken(claims IJWTClaims) (string, error) Validate(raw string) (err error) VerifyToken(token string, claims IJWTClaims) (err error) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error) }
IJWT interface
type IJWTClaims ¶
type IJWTExpire ¶
type IJWTExpire interface { ExpiresAfter(d time.Duration) GetExpiresAfter() *jwt.NumericDate }
type RS256JWT ¶
type RS256JWT struct { SigningKey *rsa.PrivateKey Sig jose.Signer }
RS256JWT type
func (RS256JWT) GenerateToken ¶
func (r RS256JWT) GenerateToken(claims IJWTClaims) (token string, err error)
GenerateToken method
func (RS256JWT) RefreshToken ¶
func (r RS256JWT) RefreshToken(token string, claims IJWTClaims, duration time.Duration) (string, error)
RefreshToken method
func (RS256JWT) VerifyToken ¶
func (r RS256JWT) VerifyToken(token string, claims IJWTClaims) (err error)
VerifyToken method