sessions

package module
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Jan 2, 2022 License: MIT Imports: 10 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidToken         = errors.New("invalid token")
	ErrInvalidSigningMethod = errors.New("invalid signing method")
)

Functions

func InContext

func InContext(ctx context.Context, token *AccessToken) context.Context

Types

type AccessToken

type AccessToken struct {
	ID          string
	CreatedFrom string
	Scopes      []string
	ProfileID   string
	ClientID    string
	CreatedAt   time.Time
}

func FromContext

func FromContext(ctx context.Context) *AccessToken

type AccessTokenClaims

type AccessTokenClaims struct {
	jwt.RegisteredClaims
	Scopes      []string `json:"scopes,omitempty"`
	CreatedFrom string   `json:"from,omitempty"`
}

type Dependencies

type Dependencies struct {
	JWTPrivateKey *rsa.PrivateKey
	JWTPublicKey  *rsa.PublicKey
	ServiceID     string
}

func (Dependencies) CreateJWT

func (d Dependencies) CreateJWT(ctx context.Context, token AccessToken) (string, error)

func (Dependencies) TokenFromRequest

func (d Dependencies) TokenFromRequest(r *http.Request) (*AccessToken, error)

func (Dependencies) Validate

func (d Dependencies) Validate(ctx context.Context, jwtVal string) (AccessToken, error)

Jump to

Keyboard shortcuts

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