我正在为一堆用户开发一些东西,当我测试它时,NAT用户正在合并他们的信息,因为它只有一个会话。 如何拆分它以向正确的用户显示正确的信息?
我正在使用Java,JSF 1.2和SpringSecurity。
更新
或者至少,我怎样才能开发并确保它被拆分,一个用户只能访问自己的信息?
答案 0 :(得分:6)
这可能是一个愚蠢的(抱歉)会话处理,它通过IP匹配会话。您的所有NAT用户都具有相同的外部IP,因此它们已合并。更好地使用cookie来处理会话。
正如beliarius所说,也许你已经使用过cookies,但如果cookie是用IP创建的,那么它们就没用了。
如果您所说的应用程序不是基于浏览器的,则必须向您的客户发送cookie并且必须为您自己实施cookie处理。或者每个客户端只使用一个TCP连接,然后重新连接重新连接。
答案 1 :(得分:0)
添加@Daniel的答案,我认为基于IP地址的亲缘关系配置了不正确的子网掩码值。如果配置了基于IP地址的亲缘关系,则掩码应为255.255.255.255,以基于IP唯一标识连接。这也应该在IP虚拟服务器中检查。
答案 2 :(得分:0)
有时,如果会话cookie在每次会话开始时都没有正确重新生成,就会发生这种情况。检查不同客户端的session_id以测试此假设。