gpt4 book ai didi

java - 多个浏览器实例是否在同一个 session 中运行

转载 作者:行者123 更新时间:2023-11-29 08:57:27 26 4
gpt4 key购买 nike

我需要将不同浏览器的 session 合并为一个。请仔细阅读我的内容,我知道来自同一浏览器实例的多个选项卡或窗口会自动执行此操作。但是,我有相同浏览器的不同实例,它们共享相同的总统 session 池。这意味着如果我强制执行 session cookie 持久性选项,任务会自动解决。然而,支持该选项的应用服务器并不多。某些服务器(如 WebSphere)提供了一个选项作为记住我,但是它设置了一个具有有限信任的持久性 cookie,因此可以提示用户输入登录信息。所以我需要一些想法。我目前可以看到一种方法

  1. 当用户从一个实例签名时,会建立一些持久性 cookie 以保留一些 token 。
  2. token 是一些持有 session 对象的单例映射中的键
  3. 任何请求 session 但未获取 session 的 servlet 代码都可以检查 cookie 并使用 token 从 session 映射中获取 session
  4. session 监听器在终止时从 session 映射中删除 session

我需要你的意见

  1. 可能的安全问题
  2. 可能的资源泄漏
  3. 在集群中扩展解决方案感谢您的任何想法,但请不要试图说服我我没有用例。如果您想了解用例,请私信我。

最佳答案

  1. 如果使用服务器上的 key 和一些不可重复的 session 标识符为用户 session 加密 cookie 数据,那么您只需要担心“中间人”,这可以使用 ssl 来缓解。

  2. 我不认为这是一个问题,因为您说过您的服务器 session 有滑动过期时间,您的服务器应该在达到该过期时间时回收资源。

  3. 除非您使用一些后备存储来支持粘性 session 持久性,否则您的用户 session 将在故障转移期间丢失。

另外,请记住,您的身份验证 cookie 仅适用于发布它的域。

关于java - 多个浏览器实例是否在同一个 session 中运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19507856/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com