auth

package
v0.4.1 Latest Latest
Warning

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

Go to latest
Published: Sep 20, 2023 License: MIT Imports: 8 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidAuthorizationHeader = fmt.Errorf("missing or invalid Authorization header")
	ErrUnexpectedAlgorithm        = fmt.Errorf("unexpected algorithm")
	ErrInvalidToken               = fmt.Errorf("invalid token")
)

Functions

func AttachUser

func AttachUser(next http.Handler) http.Handler

func Claims

func Claims(ctx context.Context) (jwt.MapClaims, bool)

func GenerateToken

func GenerateToken(modifyClaims ...TokenOptions) (string, error)

func HasClaim

func HasClaim(key string, value any) router.MiddlewareFunc

func LoggedIn

func LoggedIn(next http.Handler) http.Handler

func SetAppKey

func SetAppKey(key []byte)

func UserIDFactory

func UserIDFactory[T any](cb func(claims jwt.MapClaims) (T, bool)) func(ctx context.Context) (T, bool)

Types

type TokenOptions

type TokenOptions func(claims jwt.MapClaims) jwt.MapClaims

func WithAudience

func WithAudience(aud string) TokenOptions

func WithClaim

func WithClaim(key string, value any) TokenOptions

func WithExpirationTime

func WithExpirationTime(exp time.Time) TokenOptions

func WithIssuedAtTime

func WithIssuedAtTime(iat time.Time) TokenOptions

func WithIssuer

func WithIssuer(iss int) TokenOptions

func WithJWTID

func WithJWTID(jti string) TokenOptions

func WithLifetime

func WithLifetime(duration time.Duration) TokenOptions

func WithNotBeforeTime

func WithNotBeforeTime(nbf time.Time) TokenOptions

func WithSubject

func WithSubject[T string | int](sub T) TokenOptions

Jump to

Keyboard shortcuts

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