basic

package
v3.0.0 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ForbiddenHandler

type ForbiddenHandler func(http.ResponseWriter, *http.Request, model.User, string)

type Option

type Option func(Service) Service

func WithForbiddenHandler

func WithForbiddenHandler(onForbidden ForbiddenHandler) Option

func WithRealm

func WithRealm(realm string) Option

type PasswordStorage

type PasswordStorage interface {
	SavePassword(ctx context.Context, user model.User, password string) error
	UpdatePassword(ctx context.Context, user model.User, password string) error
}

type Provider

type Provider interface {
	GetBasicUser(ctx context.Context, r *http.Request, login, password string) (model.User, error)
	IsAuthorized(ctx context.Context, user model.User, profile string) bool
}

type Service

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

func New

func New(provider Provider, options ...Option) Service

func (Service) GetUser

func (s Service) GetUser(ctx context.Context, r *http.Request) (model.User, error)

func (Service) IsAuthorized

func (s Service) IsAuthorized(ctx context.Context, user model.User, profile string) bool

func (Service) OnError

func (s Service) OnError(w http.ResponseWriter, r *http.Request, err error)

func (Service) OnForbidden

func (s Service) OnForbidden(w http.ResponseWriter, r *http.Request, user model.User, profile string)

Jump to

Keyboard shortcuts

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