0

人们使用两个不同的网站,我们称它们为 A 和 B。现在,就登录页面而言,A 和 B 在设计上几乎相同,但 A 和 B 的用户帐户登录存储在单独的数据表和信息中是不同的。当有人登录 A 时,IE 会将他们的信息存储在一个 cookie 中,并在进入 B 时调用它,即使它们并不相同。在登录 Web 表单中,我找不到生成 cookie 的代码,所以我假设一切都在 IE 中完成。我在每个用户的 AppData 文件夹中找到了据称存储所有 IE cookie 的文件“index.dat”,但我不知道如何访问它,更不用说更改 IE 存储 cookie 的方式了。

我的目标是让 IE 为 A 和 B 提供不同的 cookie。

4

3 回答 3

3

将站点放在不同的域上。如果站点共享一个域,它们将看到彼此的 cookie。你无法改变这一点。这就是 cookie 的工作原理。

于 2013-03-25T15:54:39.153 回答
2

所以我想您想将默认的 asp.net 表单身份验证 cookie 名称更改为其他名称。

web.config 中的类似内容:

 <authentication mode="Forms">
    <forms name="myCustomCookieForApp1" ... />
  </authentication>

你可以在这里阅读:http: //msdn.microsoft.com/en-us/library/ff647070.aspx

于 2013-03-25T16:07:36.457 回答
0

IE 将 A 的 cookie 发送到 B 的唯一方法是,如果它们在同一个域中,并且您尚未配置登录机制以将 cookie 限制到您的子域。

查看在父域请求中发送的子域 cookie?

于 2013-03-25T15:57:37.523 回答