使用Jersey和spring安全性实现RESTful Web服务

时间:2011-03-21 20:20:45

标签: security apache rest spring-security jersey

现在,我正在使用Jersey实现RESTful webservice。 为了安全起见,我们正在考虑使用spring security。

整合平针织物&春天的安全,我们发现了一些问题。

  1. 重定向到8080端口(由servlet容器使用)。   我们在apache中使用代理模块只支持80,443。   当请求被重定向到登录页面时,请求url被更改为使用servlet容器(tomcat)使用的8080端口。   如何防止重定向到8080?   如果我们只想显示消息(错误消息)什么是好的选择?

  2. 保持会话的好方法是什么?   我发现使用不支持cookie的客户端工具的问题。 (我发现Jersey客户端不支持cookie,因此会话不会继续使用它。)   什么是保持会话的好方法?

1 个答案:

答案 0 :(得分:1)

  1. 我在使用反向代理时遇到类似的端口号/协议问题。我还没有想出如何解决我的问题(可能在这里问另一个问题),但你可能想看一下spring-security配置的“port-mapping”设置:http://static.springsource.org/spring-security/site/docs/3.0.x/reference/ns-config.html#ns-requires-channel

    我不确定这是否能完全符合您的要求,但值得一试。

  2. 我建议您保持RESTful Web服务无状态。不要在服务器上维护任何会话。对于身份验证,您可以使用OAuth等单独验证每个请求。