confjwt

package
v0.4.7-rc2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 1, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	PermissionValidatorFrom  = contextx.From[tCtxPermissionValidator, PermissionValidator]
	MustPermissionValidator  = contextx.Must[tCtxPermissionValidator, PermissionValidator]
	WithPermissionValidator  = contextx.With[tCtxPermissionValidator, PermissionValidator]
	CarryPermissionValidator = contextx.Carry[tCtxPermissionValidator, PermissionValidator]

	BuiltinTokenParserFrom  = contextx.From[tCtxBuiltinTokenParser, BuiltinTokenParser]
	MustBuiltinTokenParser  = contextx.Must[tCtxBuiltinTokenParser, BuiltinTokenParser]
	WithBuiltinTokenParser  = contextx.With[tCtxBuiltinTokenParser, BuiltinTokenParser]
	CarryBuiltinTokenParser = contextx.Carry[tCtxBuiltinTokenParser, BuiltinTokenParser]
)
View Source
var (
	JWTFrom  = contextx.From[tCtxJWT, *JWT]
	MustJWT  = contextx.Must[tCtxJWT, *JWT]
	WithJWT  = contextx.With[tCtxJWT, *JWT]
	CarryJWT = contextx.Carry[tCtxJWT, *JWT]
)
View Source
var (
	ErrInvalidSignKey = errors.New("invalid jwt sign key, got empty")
)

Functions

func AuthorizationFrom

func AuthorizationFrom(ctx context.Context) string

Types

type Auth

type Auth struct {
	AuthInQuery  string `name:"authorization,omitempty" in:"query"  validate:"@string[1,]"`
	AuthInHeader string `name:"Authorization,omitempty" in:"header" validate:"@string[1,]"`
}

func (Auth) ContextKey

func (r Auth) ContextKey() any

func (Auth) Output

func (r Auth) Output(ctx context.Context) (any, error)

type BuiltinTokenParser

type BuiltinTokenParser func(ctx context.Context, tok string) (payload any, err error, valid bool)

type Claims

type Claims struct {
	Payload any              `json:"v"`
	Expired *jwt.NumericDate `json:"e,omitempty"`
	Issuer  string           `json:"i,omitempty"`
}

func (*Claims) GetAudience

func (c *Claims) GetAudience() (jwt.ClaimStrings, error)

func (*Claims) GetExpirationTime

func (c *Claims) GetExpirationTime() (*jwt.NumericDate, error)

func (*Claims) GetIssuedAt

func (c *Claims) GetIssuedAt() (*jwt.NumericDate, error)

func (*Claims) GetIssuer

func (c *Claims) GetIssuer() (string, error)

func (*Claims) GetNotBefore

func (c *Claims) GetNotBefore() (*jwt.NumericDate, error)

func (*Claims) GetSubject

func (c *Claims) GetSubject() (string, error)

type JWT

type JWT struct {
	Issuer  string         `url:""`
	ExpIn   types.Duration `url:""`
	SignKey string         `url:""`
}

func (*JWT) ExpiresAt

func (c *JWT) ExpiresAt() *jwt.NumericDate

func (*JWT) Generate

func (c *JWT) Generate(payload any) (string, error)

func (*JWT) GenerateNoExpiration

func (c *JWT) GenerateNoExpiration(payload any) (string, error)

func (*JWT) Init

func (c *JWT) Init() error

func (*JWT) Parse

func (c *JWT) Parse(v string) (*Claims, error)

func (*JWT) SetDefault

func (c *JWT) SetDefault()

type PermissionValidator

type PermissionValidator func(context.Context, any) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL