auth

package
v0.0.1-0...-104a2d1 Latest Latest
Warning

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

Go to latest
Published: Jun 9, 2025 License: AGPL-3.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrWrongCred     = errors.New("auth.wrong_credentials")
	ErrEmailRequired = errors.New("auth.email_required")
	ErrPasswordReq   = errors.New("auth.password_critera")
	ErrExistingUser  = errors.New("auth.user_exists")
)

Functions

func RegisterHTTPHandlers

func RegisterHTTPHandlers(db *pgxpool.Pool, storage storage.Storage, validate *validation.Validator, tkn *jwt.Service, config *config.Config, logger *zerolog.Logger) http.Handler

func RegisterValidations

func RegisterValidations(v *validator.Validate) error

Types

type Handler

type Handler struct {
	// contains filtered or unexported fields
}

func NewHandler

func NewHandler(validator *validation.Validator, encrypt *encrypt.Encrypter, tokenService *jwt.Service, repo user.Repository, logger *zerolog.Logger) *Handler

func (*Handler) DisableMfa

func (h *Handler) DisableMfa(w http.ResponseWriter, r *http.Request)

func (*Handler) GetSessions

func (h *Handler) GetSessions(w http.ResponseWriter, r *http.Request)

func (*Handler) GoogleCallbackHandler

func (h *Handler) GoogleCallbackHandler(w http.ResponseWriter, r *http.Request)

func (*Handler) GoogleHandler

func (h *Handler) GoogleHandler(w http.ResponseWriter, r *http.Request)

func (*Handler) InitiateMfaSetup

func (h *Handler) InitiateMfaSetup(w http.ResponseWriter, r *http.Request)

func (*Handler) Login

func (h *Handler) Login(w http.ResponseWriter, r *http.Request)

func (*Handler) Logout

func (h *Handler) Logout(w http.ResponseWriter, r *http.Request)

TODO: Revoke the active session on logout

func (*Handler) Refresh

func (h *Handler) Refresh(w http.ResponseWriter, r *http.Request)

func (*Handler) RevokeSession

func (h *Handler) RevokeSession(w http.ResponseWriter, r *http.Request)

func (*Handler) Signup

func (h *Handler) Signup(w http.ResponseWriter, r *http.Request)

func (*Handler) VerifyMfaSetup

func (h *Handler) VerifyMfaSetup(w http.ResponseWriter, r *http.Request)

type InitiateMfaResponse

type InitiateMfaResponse struct {
	QrCodeUrl string `json:"qr_code_url"`
	Secret    string `json:"secret"` // The setup key
}

type LoginRequest

type LoginRequest struct {
	Email    string `json:"email" validate:"required,email"`
	Password string `json:"password" validate:"required"`
}

type SignupRequest

type SignupRequest struct {
	Email    string `json:"email" validate:"required,email"`
	Password string `json:"password" validate:"required,min=8,strong_password"`
}

type VerifyMfaRequest

type VerifyMfaRequest struct {
	Otp string `json:"otp" validate:"required,len=6,numeric"`
}

Jump to

Keyboard shortcuts

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