ASP.NET会话ID在浏览器选项卡之间共享

Dot*_*dow 8 asp.net session-state

我最近一直在使用在proc会话中使用的asp.net webforms开发一个网站,我注意到会话ID在浏览器标签之间共享.所以我想知道你会为以下情况做些什么:

问题: 在一个浏览器问题中有多个不同用户登录

  1. 用户打开浏览器选项卡1,使用"user1"登录 - 存储在会话中
  2. 用户打开浏览器选项卡2,使用"user2"登录 - 存储在会话中
  3. 在此阶段,会话信息现在指向"user2",因为会话ID在浏览器选项卡之间共享
  4. 用户在选项卡1上尝试操作,突然他们有"user2"信息

如何在选项卡1中提醒用户用户已更改或如何强制tab1用户注销?

我最初的想法是通过数据库或应用程序对象保留一个具有会话ID的活动用户列表,但我面临的问题是在标签1中,当我向HttpContext.Current请求时,我要比较列表.用户将使用"user2"更新如何知道浏览器选项卡1最初是用于"user1"

感谢任何让我知道上述问题的替代方案或最佳实践的人

问候DotnetShadow

Kla*_*sen 7

为什么不在user2登录时发出警告?有一条消息,例如"您已经以user1身份登录,您确定要再次以其他用户身份登录吗?"