auth

package
v0.0.0-...-6b69eb2 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2022 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	DBAccessToken  map[string]*AccessToken
	SessionTimeout time.Duration = time.Hour * 4
)

Functions

func HandlerAuthMiddleware

func HandlerAuthMiddleware(pgx *db.PGClient, store *db.Storage) func(c *fiber.Ctx) error

func HandlerTokenMiddleware

func HandlerTokenMiddleware(pgx *db.PGClient, store *db.Storage) func(c *fiber.Ctx) error

func HandlerV1BasicAuthorizer

func HandlerV1BasicAuthorizer(user, pass string) bool

func HandlerV1BasicSignIn

func HandlerV1BasicSignIn(pgx *db.PGClient, store *db.Storage) func(c *fiber.Ctx) error

func HandlerV1BasicUnauthorized

func HandlerV1BasicUnauthorized(c *fiber.Ctx) error

func HandlerV1SignOut

func HandlerV1SignOut(pgx *db.PGClient, store *db.Storage) func(c *fiber.Ctx) error

func HandlerV1UserInfo

func HandlerV1UserInfo(pgx *db.PGClient) func(c *fiber.Ctx) error

func PEMEncodeToMemory

func PEMEncodeToMemory(privateKey *rsa.PrivateKey) ([]byte, []byte, error)

func ParsePKCS1PrivateKey

func ParsePKCS1PrivateKey(privateKey []byte) (*rsa.PrivateKey, *rsa.PublicKey, error)

Types

type AccessToken

type AccessToken struct {
	UserID int64
	ID     int64
	Role   role
}

type AuthToken

type AuthToken struct {
	Token string `json:"token"`
}

type TokenClaims

type TokenClaims struct {
	Name      string `json:"nae"`
	UUID      string `json:"usr"`
	ID        string `json:"jti"`
	Issuer    string `json:"iss"`
	NotBefore int64  `json:"nbf"`
	IssuedAt  int64  `json:"iat"`
	ExpiresAt int64  `json:"exp"`
}

func (*TokenClaims) RefreshExpire

func (c *TokenClaims) RefreshExpire()

type UserAccount

type UserAccount struct {
	Name       string           `json:"name"`
	Email      string           `json:"mail"`
	Gravatar   string           `json:"gravatar"`
	Job        string           `json:"job"`
	Level      string           `json:"level"`
	Permission []UserPermission `json:"permission"`
}

type UserPermission

type UserPermission struct {
	Name string `json:"name"`
}

Jump to

Keyboard shortcuts

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