我想知道在同一个浏览器中有两个并发会话是否有意义?这种情况可能有两种类型:
1)用户打开一个浏览器窗口,以用户A的身份登录,启动会话1。然后,他打开另一个浏览器窗口(在同一浏览器中),在该窗口中,他以用户A的身份登录,但启动了另一个会话,即会话2。
我知道这在许多浏览器中通常是不可能的,因为为整个浏览器设置了一个会话cookie。但是,在某些浏览器中,可以以这种方式拥有多个会话。
2)这与1类似,不同之处在于,用户第二次登录时,他以用户B的身份登录,启动会话2。因此,现在您有一个人在同一浏览器中以两个用户的身份登录。
最后,允许这些东西似乎不是最好的安全实践,也不实用。别人是怎么想的?
发布于 2013-03-08 04:50:52
首先,你的假设是错误的。首先,您必须了解,当从浏览器访问单个网站时,必须使用单个会话,并且不可能同时运行同一个web浏览器的不同会话。
您似乎错误地理解了私有浏览器的工作原理。使得私有会话不与其它公共会话共享信息、cookie和数据,反之亦然。一旦你关闭了私人会话,所有的缓存,Cookie和其他东西都会被永久删除。
我还没有看到任何支持浏览器多会话的web浏览器。
但另一种方法是可用的,即您必须创建不同的Web浏览器配置文件,这可以帮助您,因为每个配置文件数据是单独维护的,并且与其他会话没有冲突。
发布于 2013-06-14 06:01:19
我目前面临的一种可能的情况是,允许来自同一浏览器的多个用户会话,但我还没有找到一个合适的解决方案。
我们使用的是Yii框架。目前我们有两种类型的用户,即客户和管理员。两者都从相同的登录表单登录,并使用相同的会话名称和变量来存储会话信息。仅根据用户表(customer或admin)中的类型列,将用户带到适当的视图。在一个管理视图(页面)中,有一个选项供管理员以任何用户的身份登录,并在iframe中通过用户的视图进行传播。问题是,当管理员打开两个选项卡并以两个不同用户的身份登录时,其中一个的会话信息会覆盖另一个,我们就会开始遇到与会话相关的问题。
有没有人能给我一个合适的方法来处理这类问题。我已经搜索了很多次,试图用多个会话来处理这个问题,但还没有找到一个合适的解决方案。
发布于 2013-06-14 06:18:12
这里没有什么可以“提供支持”的。一个浏览器不能容纳多个会话,因为它在每个站点上只持有一个唯一的cookie,而与窗口无关。如果浏览器实际上有一种模式,在这种模式下,它支持每个站点持有两个单独的相同cookie,那么就像用户从另一个浏览器或另一台机器登录一样。这当然应该是可行的;也就是说,你不应该试图颠覆这种行为。因此,同一浏览器中的双重会话只是这种多会话行为的一个特定实例,没有什么特别之处。
https://stackoverflow.com/questions/15286379
复制相似问题