我正在开发一个应用程序,我需要在同一台机器上支持多个浏览器实例,但用户登录不同!就我们打开两个不同的 IE 进程实例而言,服务器端会有不同的会话,但 Firefox 的情况并非如此(如果我错了,请纠正我)。那么有什么方法可以以某种方式将登录特定信息与进入 Web 服务器的每个 HTTP 请求(GET / POST)链接起来。我正在探索 URL 重写/cookie,但没有得到正确的想法。
请分享您的想法/观点。
谢谢,
贾坦
我正在开发一个应用程序,我需要在同一台机器上支持多个浏览器实例,但用户登录不同!就我们打开两个不同的 IE 进程实例而言,服务器端会有不同的会话,但 Firefox 的情况并非如此(如果我错了,请纠正我)。那么有什么方法可以以某种方式将登录特定信息与进入 Web 服务器的每个 HTTP 请求(GET / POST)链接起来。我正在探索 URL 重写/cookie,但没有得到正确的想法。
请分享您的想法/观点。
谢谢,
贾坦
虽然这可以通过在应用程序中使用的所有 URL 中传递某种令牌来实现,但它会非常脆弱。
你真的,真的需要回到那些赞助需求的人那里,让他们知道这个特殊的需求非常昂贵,他们真的想继续吗?
如果您使用 NT 身份验证,它将自动工作。用户必须使用“以用户身份运行”来启动 IE 或 FireFox。
使用 Forms 身份验证,一个想法是让人们通过组合框轻松切换用户。使用会话对象来记住会话可以切换到哪些用户。
另一种选择是更改身份验证系统。允许用户使用一个新角色来完成这两个角色。
另一种选择是告诉您的用户运行不同的 IE 实例,默认情况下它们将支持不同的表单登录。或者一个Firefox和一个IE。
我拒绝采用动态链接或会话 ID 的方式。那不值得努力。
编辑:再三考虑,我认为您将不得不动态更改所有链接以在变量中包含会话 ID。
更多分析:
这是在评论中进行的,然后太长了。
我想你可以像传统一样使用一个会话和 cookie 来做到这一点。当用户第二次登录时,您将其记录为“2”集或一些通用标识符。然后使用像(我只知道 php)“...index.php?user=2”这样的 url。然后,当用户点击链接时,它可以与手头的数据相关联。这样,会话 ID 就不会出现在 URL 之外,并且每个用户只需要一个会话。
还有一个想法:由于它是同一个现实生活中的人,因此可能在页面顶部有一个下拉菜单:“执行操作为:”。