authenticate

package
v0.5.2 Latest Latest
Warning

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

Go to latest
Published: Dec 5, 2019 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var CSPHeaders = map[string]string{
	"Content-Security-Policy": "default-src 'none'; style-src " +
		"'sha256-spMkVDoBBY86p0RC1fBYwdnGyMypJM8eG57+p3VASyk=' " +
		"'sha256-qnVkQSG7pWu17hBhIw0kCpfEB3XGvt0mNRa6+uM6OUU=' " +
		"'sha256-qOdRsNZhtR+htazbcy7guQl3Cn1cqOw1FcE4d3llae0=';" +
		"img-src 'self';",
	"Referrer-Policy": "Same-origin",
}

CSPHeaders are the content security headers added to the service's handlers https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src

Functions

func ValidateOptions added in v0.0.5

func ValidateOptions(o config.Options) error

ValidateOptions checks that configuration are complete and valid. Returns on first error found.

Types

type Authenticate added in v0.0.2

type Authenticate struct {
	// RedirectURL is the authenticate service's externally accessible
	// url that the identity provider (IdP) will callback to following
	// authentication flow
	RedirectURL *url.URL
	// contains filtered or unexported fields
}

Authenticate contains data required to run the authenticate service.

func New added in v0.0.2

func New(opts config.Options) (*Authenticate, error)

New validates and creates a new authenticate service from a set of Options.

func (*Authenticate) Handler added in v0.0.2

func (a *Authenticate) Handler() http.Handler

Handler returns the authenticate service's handler chain.

func (*Authenticate) OAuthCallback added in v0.0.2

func (a *Authenticate) OAuthCallback(w http.ResponseWriter, r *http.Request)

OAuthCallback handles the callback from the identity provider.

https://openid.net/specs/openid-connect-core-1_0.html#CodeFlowSteps https://openid.net/specs/openid-connect-core-1_0.html#AuthResponse

func (*Authenticate) RefreshAPI added in v0.5.0

func (a *Authenticate) RefreshAPI(w http.ResponseWriter, r *http.Request)

RefreshAPI loads a global state, and attempts to refresh the session's access tokens and state with the identity provider. If successful, a new signed JWT and refresh token (`refresh_token`) are returned as JSON

func (*Authenticate) RobotsTxt added in v0.0.2

func (a *Authenticate) RobotsTxt(w http.ResponseWriter, r *http.Request)

RobotsTxt handles the /robots.txt route.

func (*Authenticate) SignIn added in v0.0.2

func (a *Authenticate) SignIn(w http.ResponseWriter, r *http.Request)

SignIn handles to authenticating a user.

func (*Authenticate) SignOut added in v0.0.2

func (a *Authenticate) SignOut(w http.ResponseWriter, r *http.Request)

SignOut signs the user out and attempts to revoke the user's identity session Handles both GET and POST.

func (*Authenticate) VerifySession added in v0.4.0

func (a *Authenticate) VerifySession(next http.Handler) http.Handler

VerifySession is the middleware used to enforce a valid authentication session state is attached to the users's request context.

Jump to

Keyboard shortcuts

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