我正在开发一个基于OSGi的 Web应用程序,它公开了几个 REST 资源。为此,我利用了Amdatu project的两个包,即org.amdatu.web.rest.jaxrs
和org.amdatu.web.rest.wink
。
系统运行良好,但现在我必须解决一些安全问题。登录后,我的OSGi服务器为用户提供了一个JWT令牌,用户的角色存储在该令牌中。对于Authorization标头中的每个请求,此令牌将发送回服务器。
我能够在资源方法的开头简单地检查令牌的有效性和用户的角色,但我想通过注释来做到这一点。通过扩展javax.servlet.Filter interface
,我实现了一个能够拦截所有http请求的过滤器类。
不幸的是,从这个类中我不知道为资源方法设置了哪些注释(HttpServletRequest对象只给出了资源路径信息)。
所以,我的问题是:有没有办法从过滤器类中检查资源方法注释,以便正确处理JWT?
我找到了几种基于泽西岛的解决方案,但它与前面提到的Amdatu包有冲突。 提前谢谢。