1

我想知道在同一个浏览器中有两个并发会话是否有意义?这种情况可能有两种情况:

1) 用户打开浏览器窗口并以用户 A 的身份登录,开始会话 1。然后他打开另一个浏览器窗口(在同一浏览器中)以用户 A 的身份登录,但启动不同的会话,会话 2。

我知道这在许多浏览器中通常是不可能的,因为为整个浏览器设置了一个会话 cookie。但是,在某些浏览器中,可以以这种方式拥有多个会话。

2)这类似于1,除了用户第二次登录时,他作为用户B登录,开始会话2。所以现在你有一个人作为两个用户在同一个浏览器中登录。

最后,允许这些东西似乎不是最好的安全实践,而且似乎也不实用。别人怎么看?

4

3 回答 3

2

首先,因为您的假设是错误的。首先,您必须了解,当从浏览器访问单个网站时,只有单个会话,并且不可能同时运行同一 Web 浏览器的不同会话。

您似乎错误地理解了私人浏览器的工作原理。私人会话不会与其他公共会话共享信息 cookie 和数据,反之亦然。一旦您关闭私人会话,所有缓存、Cookie 和其他内容都会被永久删除。

我还没有看到任何支持浏览器多会话的网络浏览器。

但是可以使用另一种方法,即您必须创建不同的 Web 浏览器配置文件,这可以帮助您,因为每个配置文件数据都是单独维护的,并且与其他会话没有冲突。

于 2013-03-08T04:50:51.553 回答
1

目前我面临的一种可能情况需要允许来自同一个浏览器的多个用户会话,但我还没有找到合适的解决方案。

我们正在使用 Yii 框架。目前我们有两种用户,即客户和管理员。两者都从相同的登录表单登录,并使用相同的会话名称和变量来存储会话信息。仅基于用户表(客户或管理员)中的类型列,将用户带到适当的视图。在其中一个管理员视图(页面)中,管理员可以选择以任何用户身份登录并通过 iframe 中的用户视图进行传播。问题在于,当管理员打开两个选项卡并以两个不同的用户身份登录时,一个用户的会话信息会覆盖另一个用户,并且我们开始遇到与会话相关的问题。

谁能建议我处理此类问题的正确方法。我已经搜索了很多试图通过多个会话来处理这个问题,但还没有找到合适的解决方案。

于 2013-06-14T06:01:19.233 回答
1

这里没有什么可以“提供支持”的。一个浏览器不能保存多个会话,因为它每个站点只保存一个唯一的 cookie,而与窗口无关。如果浏览器实际上具有支持在每个站点保存两个单独的相同 cookie 的模式,那么它与用户从另一个浏览器或另一台机器登录是一样的。当然应该起作用;即你不应该试图颠覆这种行为。同一浏览器中的双会话只是这种多会话行为的一个特定实例,没什么特别的。

于 2013-06-14T06:18:11.830 回答