我们正在使用 openapi3 的 light-4j 代理服务,其中一个 api 方法需要多个作用域。使用 jwt 的 enableVerifyScope,如果其中一个 jwtScopes 与任何规范范围匹配,我们就会获得成功。有没有办法我们可以验证所有必需的范围,而不仅仅是一个。谢谢!
你有一个非常独特的用例。通常,可以为终结点定义多个范围,范围验证将确保传入的 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中,所有中间件处理程序都可以是插件,因此许多客户都有自己的自定义处理程序,尤其是业务域内的处理程序。如果您对如何将处理程序注入应用程序有疑问,请告诉我。