Documentation
¶
Index ¶
Constants ¶
View Source
const (
AlgorithmHS256 = "HS256"
)
Algorithims
Variables ¶
View Source
var ( // DefaultJWTConfig is the default JWT auth middleware config. DefaultJWTConfig = JWTConfig{ Skipper: echo.DefaultSkipper, SigningMethod: AlgorithmHS256, ContextKey: "user", TokenLookup: "header:" + echo.HeaderAuthorization, Claims: jwt.MapClaims{}, } )
Functions ¶
func JWT ¶
func JWT(key []byte) echo.MiddlewareFuncd
JWT returns a JSON Web Token (JWT) auth middleware.
For valid token, it sets the user in context and calls next handler. For invalid token, it returns "401 - Unauthorized" error. For empty token, it returns "400 - Bad Request" error.
See: https://jwt.io/introduction See `JWTConfig.TokenLookup`
func JWTWithConfig ¶
func JWTWithConfig(config JWTConfig) echo.MiddlewareFuncd
JWTWithConfig returns a JWT auth middleware with config. See: `JWT()`.
Types ¶
type JWTConfig ¶
type JWTConfig struct {
// Skipper defines a function to skip middleware.
Skipper echo.Skipper `json:"-"`
// Signing key to validate token.
// Required.
SigningKey interface{} `json:"signing_key"`
// Signing method, used to check token signing method.
// Optional. Default value HS256.
SigningMethod string `json:"signing_method"`
// Context key to store user information from the token into context.
// Optional. Default value "user".
ContextKey string `json:"context_key"`
// Claims are extendable claims data defining token content.
// Optional. Default value jwt.MapClaims
Claims jwt.Claims
// TokenLookup is a string in the form of "<source>:<name>" that is used
// to extract token from the request.
// Optional. Default value "header:Authorization".
// Possible values:
// - "header:<name>"
// - "query:<name>"
// - "cookie:<name>"
TokenLookup string `json:"token_lookup"`
// contains filtered or unexported fields
}
JWTConfig defines the config for JWT middleware.
Click to show internal directories.
Click to hide internal directories.