token

package
v0.0.0-...-1ad4281 Latest Latest
Warning

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

Go to latest
Published: Nov 11, 2022 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrInvalidSelector Error Invalid Selector
	ErrInvalidSelector = errors.New("token/check: Error Invalid Selector")
	// ErrInvalidToken Error Invalid Token
	ErrInvalidToken = errors.New("token/check: Error Invalid Token")
	// ErrExpiredToken Error Expired Token
	ErrExpiredToken = errors.New("token/check: Error Expired Token")
	// ErrInvalid Error Invalid
	ErrInvalid = errors.New("token/check: Error Invalid")
)
View Source
var ErrAuthCookie = errors.New("token/auth: Error Invalid Auth Cookie Value")

ErrAuthCookie Invalid Auth Cookie

Functions

func DeleteAuth

func DeleteAuth(c *fiber.Ctx) error

DeleteAuth token if exist

func DeleteAuthByID

func DeleteAuthByID(userID int64) error

DeleteAuthByID user's Auth tokens from database

func SetAuth

func SetAuth(c *fiber.Ctx, userID int64) error

SetAuth create, insert and add to cookies auth token

func TypeMaxLife

func TypeMaxLife(t Types) (maxLife time.Duration)

TypeMaxLife returns max life for type

Types

type Token

type Token struct {
	ID       int64  `msg:"id"`
	UserID   int64  `msg:"userId"`
	Type     Types  `msg:"type"`
	Selector string `msg:"selector"`

	TokenHash  string `msg:"tokenHash"`
	Created    int64  `msg:"created"`
	Expiration int64  `msg:"expiration"`
	// contains filtered or unexported fields
}

Token for user

func Check

func Check(selector, token string, t Types) (*Token, error)

Check Selector Token and Type

func CheckWithID

func CheckWithID(selector, token string, userID int64, t Types) (*Token, error)

CheckWithID Selector Token UserId and Type

func Get

func Get(selector string) (*Token, error)

Get Token

func GetAuth

func GetAuth(c *fiber.Ctx) (*Token, error)

GetAuth get and check auth token

return *Token || error

func New

func New(t Types, userID int64) *Token

New Token

func NewAndInsert

func NewAndInsert(t Types, userID int64) (*Token, error)

NewAndInsert Create new token and insert

func (*Token) Check

func (t *Token) Check(token string, userID int64, ty Types) error

Check check if token is valid

func (*Token) DecodeMsg

func (z *Token) DecodeMsg(dc *msgp.Reader) (err error)

DecodeMsg implements msgp.Decodable

func (*Token) Delete

func (t *Token) Delete() error

Delete token from database

Token SHOULD NOT be used after successful delete

func (*Token) EncodeMsg

func (z *Token) EncodeMsg(en *msgp.Writer) (err error)

EncodeMsg implements msgp.Encodable

func (*Token) GetToken

func (t *Token) GetToken() string

GetToken return token string

func (*Token) Insert

func (t *Token) Insert() error

Insert token into database

func (*Token) IsExpired

func (t *Token) IsExpired() bool

IsExpired has token Expired

func (*Token) MarshalMsg

func (z *Token) MarshalMsg(b []byte) (o []byte, err error)

MarshalMsg implements msgp.Marshaler

func (*Token) Msgsize

func (z *Token) Msgsize() (s int)

Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message

func (*Token) SendEmail

func (t *Token) SendEmail(emailAddress string) error

SendEmail for token

func (*Token) UnmarshalMsg

func (z *Token) UnmarshalMsg(bts []byte) (o []byte, err error)

UnmarshalMsg implements msgp.Unmarshaler

type Types

type Types int8

Types for user

const (
	// Email token for email verification
	Email Types = iota
	// Reset token for password resets
	Reset
	// Auth token for user authentication
	Auth
)

func (*Types) DecodeMsg

func (z *Types) DecodeMsg(dc *msgp.Reader) (err error)

DecodeMsg implements msgp.Decodable

func (Types) EncodeMsg

func (z Types) EncodeMsg(en *msgp.Writer) (err error)

EncodeMsg implements msgp.Encodable

func (Types) MarshalMsg

func (z Types) MarshalMsg(b []byte) (o []byte, err error)

MarshalMsg implements msgp.Marshaler

func (Types) Msgsize

func (z Types) Msgsize() (s int)

Msgsize returns an upper bound estimate of the number of bytes occupied by the serialized message

func (*Types) UnmarshalMsg

func (z *Types) UnmarshalMsg(bts []byte) (o []byte, err error)

UnmarshalMsg implements msgp.Unmarshaler

Jump to

Keyboard shortcuts

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