cbwebauth

package
v0.10.14 Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2023 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	LoggedIn  = "logged-in"
	LoggedOut = "logged-out"
)
View Source
var (
	AclDeniedUriPlaceholder = ":acl_denied_uri:"
)

Functions

This section is empty.

Types

type Acl added in v0.10.0

type Acl struct {
	Auth *Container
}

func (*Acl) Middleware added in v0.10.0

func (a *Acl) Middleware(permittedPermissions []string, redirect string) func(ctx *fasthttp.RequestCtx) (bool, error)

func (*Acl) Permitted added in v0.10.0

func (a *Acl) Permitted(userPermissions, permittedPermissions []string) bool

func (*Acl) PermittedCtx added in v0.10.0

func (a *Acl) PermittedCtx(ctx *fasthttp.RequestCtx, permittedPermissions []string) bool

type Config added in v0.3.0

type Config struct {
	Providers               []Provider
	UnauthorisedRedirectUri string
	LogoutRedirectUri       string
}

type Container

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

func New

func New(config Config) *Container

func (*Container) AuthMiddleware

func (c *Container) AuthMiddleware(ctx *fasthttp.RequestCtx) (bool, error)

func (*Container) ChangePassword added in v0.9.0

func (c *Container) ChangePassword(providerName string, ctx *fasthttp.RequestCtx) (bool, error, map[string]error)

func (*Container) GetUniqueIdentifier

func (c *Container) GetUniqueIdentifier(providerName string, ctx *fasthttp.RequestCtx) (string, error)

func (*Container) IsAuthenticated

func (c *Container) IsAuthenticated(providerName string, ctx *fasthttp.RequestCtx) (bool, error)

func (*Container) Login

func (c *Container) Login(providerName string, ctx *fasthttp.RequestCtx) (bool, error, map[string]error)

func (*Container) Logout

func (c *Container) Logout(providerName string, ctx *fasthttp.RequestCtx, redirect string) (bool, error)

func (*Container) Register

func (c *Container) Register(providerName string, ctx *fasthttp.RequestCtx) (bool, error, map[string]error)

type Provider

type Provider interface {
	GetProviderName() string
	GetUniqueIdentifier(ctx *fasthttp.RequestCtx) string
	GetPermissions(ctx *fasthttp.RequestCtx) []string
	IsAuthenticated(ctx *fasthttp.RequestCtx) bool
	Login(ctx *fasthttp.RequestCtx) (bool, map[string]error)
	Logout(ctx *fasthttp.RequestCtx) bool
	Register(ctx *fasthttp.RequestCtx) (bool, map[string]error)
	ChangePassword(ctx *fasthttp.RequestCtx) (bool, map[string]error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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