Documentation
¶
Index ¶
Constants ¶
const (
//DefaultContextKey jwts
DefaultContextKey = "iris-jwt"
)
Variables ¶
This section is empty.
Functions ¶
func ConfigJWT ¶
func ConfigJWT()
OnError default error handler
func OnError(ctx context.Context, err string) {
supports.Error(ctx, iris.StatusUnauthorized, supports.Token_Failur, nil)
}
jwt中间件配置
func FromAuthHeader ¶
below 3 method is get token from url FromAuthHeader is a "TokenExtractor" that takes a give context and extracts the JWT token from the Authorization header.
Types ¶
type Claims ¶
type Claims struct {
Id int64 `json:"id"`
Username string `json:"username"`
//Password string `json:"password"`
//User models.User `json:"user"`
jwt.StandardClaims
}
type Config ¶
type Config struct {
// The function that will return the Key to validate the JWT.
// It can be either a shared secret or a public key.
// Default value: nil
ValidationKeyGetter jwt.Keyfunc
// The name of the property in the request where the user (&token) information
// from the JWT will be stored.
// Default value: "jwts"
ContextKey string
// The function that will be called when there's an error validating the token
// Default value:
ErrorHandler errorHandler
// A boolean indicating if the credentials are required or not
// Default value: false
CredentialsOptional bool
// A function that extracts the token from the request
// Default: FromAuthHeader (i.e., from Authorization header as bearer token)
Extractor TokenExtractor
// Debug flag turns on debugging output
// Default: false
Debug bool
// When set, all requests with the OPTIONS method will use authentication
// if you enable this option you should register your route with iris.Options(...) also
// Default: false
EnableAuthOnOptions bool
// When set, the middelware verifies that tokens are signed with the specific signing algorithm
// If the signing method is not constant the ValidationKeyGetter callback can be used to implement additional checks
// Important to avoid security issues described here: https://auth0.com/blog/2015/03/31/critical-vulnerabilities-in-json-web-token-libraries/
// Default: nil
SigningMethod jwt.SigningMethod
// When set, the expiration time of token will be check every time
// if the token was expired, expiration error will be returned
// Default: false
Expiration bool
}
Config is a struct for specifying configuration options for the jwts middleware.
type Jwts ¶
type Jwts struct {
Config Config
}
Middleware the middleware for JSON Web tokens authentication method
type TokenExtractor ¶
TokenExtractor is a function that takes a context as input and returns either a token or an error. An error should only be returned if an attempt to specify a token was found, but the information was somehow incorrectly formed. In the case where a token is simply not present, this should not be treated as an error. An empty string should be returned in that case.
func FromFirst ¶
func FromFirst(extractors ...TokenExtractor) TokenExtractor
below 3 method is get token from url FromFirst returns a function that runs multiple token extractors and takes the first token it finds
func FromParameter ¶
func FromParameter(param string) TokenExtractor
below 3 method is get token from url FromParameter returns a function that extracts the token from the specified query string parameter