apisix~jwt-auth插件

时间:2024-05-10 13:39:34

在网关开启jwt-auth插件之后,你的网关就具有了jwt解析和校验的功能,主要是校验jwt token的有效性,包含过期时间和签名等。

  • https://apisix.apache.org/docs/apisix/plugins/jwt-auth/

支持的签名算法

  • "HS256"
  • "HS512"
  • "RS256"
  • "ES256"
    如果使用非对称算法rs256和es256时,需要配置公钥信息。

相关配置

{
      "algorithm": "RS256",
      "exp": 86400,
      "key": "配置对应的jwt中key对应的值",
      "private_key": "私钥事实上可以不设置,但本插件设置为必选了",
      "public_key": "-----BEGIN PUBLIC KEY-----\n你的公钥\n-----END PUBLIC KEY-----"
}

参数key是必选的,要求你在你网站生成的jwt中,添加这个key,这个是自定义的,表示用户唯一标识,你可以定义成sub,如下图是对jwt的解析

开启流程

  1. 在添加路由时,先选择这个jwt-auth插件,并开启它,不需要任务配置内容
  2. 在消费者中,添加一个消费者,配置上面的信息,一般来说,一种jwt认证服务,一个消费者即可

相关源码

  • https://github.com/apache/apisix
  • plugins/plugins/jwt-auth.lua