我有一个silverlight Ria应用程序。我使用WebContext来创建身份验证人员。我在App.cs构造函数中有以下几行代码(它已经随silverlight业务测试一起提供了):InitializeComponent();
新的WebContext = webContext WebContext();
webContext.Authentication =新的FormsWithTimeoutAuthentication(20);
this.ApplicationLifetimeObjects.Add(webContext);
我遇到了一个问题,当我在一个浏览器选项卡中打开应用程序时,一切正常,我尝试打开另一个选项卡并以不同的用户登录,这会影响第一个选项卡中的应用程序。我追踪了WebContext散列码,得到了同样的结果。因此,WebContext似乎在两个应用程序实例上是共享的。
你知道为什么会这样吗?先谢谢你...
发布于 2013-07-23 14:12:54
Silverlight使用浏览器的http堆栈进行身份验证。使用窗体身份验证时,将向浏览器发送浏览器cookie,这将标识当前浏览器会话的经过身份验证的用户。所有浏览器选项卡都共享相同的cookie,因此所有选项卡都被标识为同一用户。
要避免此问题,您应该在Internet Explorer上使用“隐私浏览”,或在Google Chrome上使用“隐姓埋名”。
https://stackoverflow.com/questions/17802563
复制相似问题