Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // ErrGoogleInvalidToken is returned when google token is invalid ErrGoogleInvalidToken = errors.New("the token was invalid") // ErrGoogleError is returned when there is a problem verifiying the token from google ErrGoogleError = errors.New("problem verifying the token from google") // ErrUserParseError is returned when google sends a JSON object that is unparsable ErrUserParseError = errors.New("could not parse the user") // ErrWrongHostedDomain occurs when user's hd is not UCLA ErrWrongHostedDomain = errors.New("user is not part of UCLA") )
View Source
var ( // ErrTokenInvalid is an invalid token error ErrTokenInvalid = errors.New("invalid token") // ErrTokenWrongIssuer occurs when token has wrong issuer ErrTokenWrongIssuer = errors.New("token has wrong issuer") )
Functions ¶
func NewAuthMiddleware ¶
func NewAuthMiddleware(LowestAuthLevelRequired int, l interfaces.Logger) echo.MiddlewareFunc
NewAuthmiddleware enforces auth on routes
func NewJWTmiddleware ¶
func NewJWTmiddleware(t *Tokenizer, cookie string, l interfaces.Logger) echo.MiddlewareFunc
NewJWTmiddleware is an auth middleware to check JWT tokens and put its claims on the context
Types ¶
type GoogleAuthorizer ¶
type GoogleAuthorizer struct {
// contains filtered or unexported fields
}
GoogleAuthorizer allows for google oAuth
func NewGoogleAuthorizer ¶
func NewGoogleAuthorizer(l interfaces.Logger) *GoogleAuthorizer
NewGoogleAuthorizer creates an authorizer for google oAuth
func (*GoogleAuthorizer) UserLogin ¶
func (a *GoogleAuthorizer) UserLogin(token string) (*GoogleUser, error)
UserLogin is used to verify a token and parse the token from google
type GoogleUser ¶
type GoogleUser struct { Sub string `json:"sub"` HD string `json:"hd"` Email string `json:"email"` FullName string `json:"name"` FirstName string `json:"given_name"` LastName string `json:"family_name"` Picture string `json:"picture"` }
GoogleUser is the information provided from google
type Tokenizer ¶
type Tokenizer struct {
// contains filtered or unexported fields
}
Tokenizer creates/parses JWT tokens
func NewTokenizer ¶
func NewTokenizer(secret, issuer string, daysValid int, l interfaces.Logger) *Tokenizer
NewTokenizer creates a tokenizer to create/parse JWT tokens
type UserClaims ¶
UserClaims are the claims stored in the JWT
Click to show internal directories.
Click to hide internal directories.