confjwt

package
v0.4.6-rc7 Latest Latest
Warning

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

Go to latest
Published: Jun 25, 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]
)
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 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