Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java EE RESTful Web服务安全w/HMAC如何拦截请求?_Java_Web Services_Rest_Jakarta Ee_Interceptor - Fatal编程技术网

Java EE RESTful Web服务安全w/HMAC如何拦截请求?

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中添加了一个过滤器,等等,但是我迷路了 任何有这方面知识的人都可以给我一些关

我正在开发一个部署一些RESTful web服务的应用程序,我想使用HMACSHA512签名方法,但不必在每个发布的web服务中实现它

因此,我正在寻找一种在请求到达REST WS之前拦截请求的方法,并拥有一个自定义类,该类基于HttpHeaders/UriInfo/etc和HMAC摘要等,将决定它是否有效,并转发给REST WS或拒绝它

我看到了一些关于ResourceFactoryFilter的东西,在web.xml中添加了一个过滤器,等等,但是我迷路了

任何有这方面知识的人都可以给我一些关于如何实现这一点的建议?特别是,实现这一点的最佳方式以及各部分如何相互作用

我如何想象我想要做什么:客户端拦截器->REST WS->

谢谢你抽出时间


注意:我希望在没有第三方框架(如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的内部结构。很难相信我所有的网络搜索都不会显示这一点。非常感谢你!