0

我正在使用 Jetty 8,目前有两个实例设置并在循环负载均衡器后面运行。我已将其配置为通过 MongoDB 使用会话复制。我的应用程序使用弹簧安全性。它工作得很好,有两个例外。我将在这里包括一个,另一个在另一个问题中。

  1. Spring Security 的“记住我”不能正常工作。如果用户登录并请求“记住我”,那么它将正常工作,假设用户未来的身份验证请求命中了在原始登录期间命中的特定节点。但是,如果未来的身份验证请求命中另一个节点,则该节点似乎不知道“记住我”请求,因此会提示用户输入凭据。

有没有人有什么建议?我即将开始深入研究 spring security 的记住我代码和 jetty-nosql 的实现,但如果有人能节省我一些时间,我会很高兴的。

此外,我已经尝试了基于 cookie 哈希的“记住我”令牌以及数据库持久化“记住我”令牌方法,两者都有相同的问题。

4

1 回答 1

0

解决方案是使用 db 持久化“记住我”令牌方法。在我们的情况下,我们使用org.springframework.security.web.authentication.rememberme.PersistentTokenBasedRememberMeServices.

事实证明,我们第一次尝试使用 db 持久令牌方法只是错误地实现了。当我们做得正确时,它运行良好并解决了我们记住我的问题。

于 2013-03-19T21:33:39.083 回答