stateauthenticator

package
v0.0.0-...-8ff1004 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2019 License: AGPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LoginRequest

func LoginRequest(req *http.Request) (params.LoginRequest, error)

LoginRequest extracts basic auth login details from an http.Request.

TODO(axw) we shouldn't be using params types here.

Types

type Authenticator

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

Authenticator is an implementation of httpcontext.Authenticator, using *state.State for authentication.

This Authenticator only works with requests that have been handled by one of the httpcontext.*ModelHandler handlers.

func NewAuthenticator

func NewAuthenticator(statePool *state.StatePool, clock clock.Clock) (*Authenticator, error)

NewAuthenticator returns a new Authenticator using the given StatePool.

func (*Authenticator) AddHandlers

func (a *Authenticator) AddHandlers(mux *apiserverhttp.Mux)

AddHandlers adds the handlers to the given mux for handling local macaroon logins.

func (*Authenticator) Authenticate

func (a *Authenticator) Authenticate(req *http.Request) (httpcontext.AuthInfo, error)

Authenticate is part of the httpcontext.Authenticator interface.

func (*Authenticator) AuthenticateLoginRequest

func (a *Authenticator) AuthenticateLoginRequest(
	serverHost string,
	modelUUID string,
	req params.LoginRequest,
) (httpcontext.AuthInfo, error)

AuthenticateLoginRequest authenticates a LoginRequest.

TODO(axw) we shouldn't be using params types here.

func (*Authenticator) CreateLocalLoginMacaroon

func (a *Authenticator) CreateLocalLoginMacaroon(tag names.UserTag) (*macaroon.Macaroon, error)

CreateLocalLoginMacaroon is part of the httpcontext.LocalMacaroonAuthenticator interface.

func (*Authenticator) Maintain

func (a *Authenticator) Maintain(done <-chan struct{})

Maintain periodically expires local login interactions.

Jump to

Keyboard shortcuts

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