light-4j - 如何在 light-4j 中自定义 JWT 验证
问题描述
我们正在使用带有 openapi3 的 light-4j 代理服务,其中一种 api 方法需要多个范围。使用 jwt 的 enableVerifyScope,如果其中一个 jwtScopes 与任何 specsScopes 匹配,我们将获得成功。有没有一种方法可以验证所有必需的范围,而不仅仅是一个。谢谢!
解决方案
您有一个非常独特的用例。通常,您可以为端点定义多个范围,范围验证将确保传入的 JWT 具有至少一个匹配的范围以继续进行。看起来您希望确保 JWT 包含所有范围,以便授予对端点的访问权限。这不是标准实现;但是,很容易自定义https://github.com/networknt/light-rest-4j/blob/master/openapi-security/src/main/java/com/networknt/openapi/JwtVerifyHandler.java并替换handler.yml 文件中的内置处理程序。在 light-4j 中,所有中间件处理程序都可以是插件的,因此许多客户都有自己定制的处理程序,尤其是业务领域内的处理程序。如果您对如何将处理程序注入应用程序有疑问,请告诉我。
推荐阅读
- sql - 如何计算列的每个值所在的百分位数?(火花 SQL)
- smtp - 外发电子邮件卡在队列文件夹中
- sql - 通过触发器从inserted.id 创建一个字符串
- lua - Lua 生成点随机
- node.js - 如何正确地从 node.js 项目的根文件夹中进行 eslint
- php - 如何从 URL 接收 GET 请求
- r - RStudio:安装 tibble 作为 Bchron 的依赖项时出现问题
- javascript - 将鼠标悬停在 div/image 上可淡出图像并让文本淡入,但将鼠标悬停在文本上会删除图像淡出。如何预防?
- unity3d - 我可以为已经制作好的角色添加动画吗?
- bash - 用于扫描重复剧集编号的 bash 脚本,附加剧集修饰符