JWT

描述

  • 动态token校验
  • 可设置待校验的参数名称、参数位置、参数值
  • jwt生成的token一般包括用户信息

如果需要了解其他鉴权,可点击对应文档链接:

配置说明

参数名值类型是否必填值可能性默认值说明
token_namestring参数名
positionstringheader、query、body参数位置
typestringjwt驱动类型
configobjectjwt配置
config -> algorithmstringHS256、HS384、HS512、ES256、ES384、ES512、RS256、RS384、RS512jwt签名算法
config -> claims_to_verify[]stringexp,nbfjwt需要进行验证的字段
config -> issstring签发者
config -> pathstring用户字段在payload中的路径,格式参考json path
config -> secretstring密钥,仅在签名算法为HS256、HS384、HS512有效
config -> signature_is_base_64boolfalse是否base64编码签名,仅在HS256、HS384、HS512有效
config -> rsa_public_keystringRSA公钥,仅在算法为ES256、ES384、ES512、RS256、RS384、RS512有效
usersobject数组用户列表
users -> expireint64用户过期时间,时间戳格式,当值为0表示不过期
users -> patternobject用户信息
users -> pattern -> usernamestring用户名
users -> hide_credentialboolfalse转发时是否将鉴权信息隐藏
users -> labelsobject (map[string]string)用户标签,当jwt校验成功后,该标签会加入请求上下文中

配置示例

{
    "config": {
        "algorithm": "HS256",
        "claims_to_verify": [],
        "iss": "eolink",
        "path": "$.user",
        "secret": "apinto",
        "signature_is_base_64": false
    },
    "position": "header",
    "token_name": "authorization",
    "type": "jwt",
    "users": [
        {
            "expire": 0,
            "hide_credential": false,
            "labels": {},
            "pattern": {
                "username": "app1"
            }
        }
    ]
}

Jwt鉴权需要搭配应用使用,详情请点击应用

Jwt快速构造可参考 jwt生成工具open in new window