【发布时间】:2013-08-28 08:44:57
【问题描述】:
我有一个 Swing 客户端和一个在 tomcat 7 上运行的服务器,它们使用 Spring (3.1) HTTP 调用程序相互通信。到目前为止,通信工作正常(即使使用 TSL),但现在我正在尝试添加 Spring Security。
旁注:在典型的 Web 应用程序中,我会使用基本身份验证来验证用户身份。在我的 CustomAuthenticationProvider 为用户返回一个 Authentication 对象后,一切都“正常工作”,这意味着在每个进一步的请求中,SecurityContext 都会自动设置。我猜登录会向客户端返回一个会话密钥,该密钥会在每次请求时发送以识别会话。
这正是我在使用 HTTP-Invoker 时所寻找的。目前,我似乎在每个请求上都获得了一个新的上下文,这很糟糕,因为我的 customAuthenticationManager.authenticate(Authentication auth) 方法非常昂贵,并且每个用户会话实际上应该只调用一次。
有什么想法吗?
编辑我在 http://forum.springsource.org/showthread.php?10764-Maintaing-State-while-using-HttpInvoker 找到了一些提示,但由于这个链接已经有 8 年以上的历史了,我希望有一个更简单的解决方案。
【问题讨论】:
标签: spring spring-security httpinvoker