Java EE RESTful Web服务安全w/HMAC如何拦截请求?
我正在开发一个部署一些RESTful web服务的应用程序,我想使用HMACSHA512签名方法,但不必在每个发布的web服务中实现它 因此,我正在寻找一种在请求到达REST WS之前拦截请求的方法,并拥有一个自定义类,该类基于HttpHeaders/UriInfo/etc和HMAC摘要等,将决定它是否有效,并转发给REST WS或拒绝它 我看到了一些关于ResourceFactoryFilter的东西,在web.xml中添加了一个过滤器,等等,但是我迷路了 任何有这方面知识的人都可以给我一些关于如何实现这一点的建议?特别是,实现这一点的最佳方式以及各部分如何相互作用 我如何想象我想要做什么:客户端拦截器->REST WS-> 谢谢你抽出时间Java EE RESTful Web服务安全w/HMAC如何拦截请求?,java,web-services,rest,jakarta-ee,interceptor,Java,Web Services,Rest,Jakarta Ee,Interceptor,我正在开发一个部署一些RESTful web服务的应用程序,我想使用HMACSHA512签名方法,但不必在每个发布的web服务中实现它 因此,我正在寻找一种在请求到达REST WS之前拦截请求的方法,并拥有一个自定义类,该类基于HttpHeaders/UriInfo/etc和HMAC摘要等,将决定它是否有效,并转发给REST WS或拒绝它 我看到了一些关于ResourceFactoryFilter的东西,在web.xml中添加了一个过滤器,等等,但是我迷路了 任何有这方面知识的人都可以给我一些关
注意:我希望在没有第三方框架(如Spring)的情况下实现这一点。最简单的方法是编写一个ServletFilter类,您可以在web.xml中为要检查的特定URL前缀配置该类
该类将有一个
doFilter
方法,并在该方法中执行验证。如果成功,则通过调用chain.doFilter()
继续处理;否则会引发异常。最简单的方法是编写一个ServletFilter类,在web.xml中为要检查的特定URL前缀配置该类
该类将有一个
doFilter
方法,并在该方法中执行验证。如果成功,则通过调用chain.doFilter()
继续处理;否则抛出异常。您是指ServletFilter
(javax.servlet.Filter)?您是指ServletFilter
(javax.servlet.Filter)?取决于您使用的JAX-RS版本(您使用的一些术语是JAX-RS术语)可能有一个与servlet过滤器相当的过滤器,它可以让您更多地访问JAX-RS内部构件。很难相信我所有的网络搜索都不会显示这一点。非常感谢你!根据您使用的JAX-RS的版本(您使用的一些术语是JAX-RS术语),可能会有一个与servlet过滤器相当的过滤器,让您能够更多地访问JAX-RS的内部结构。很难相信我所有的网络搜索都不会显示这一点。非常感谢你!