不同的用户获得相同的cookie
我的网站允许匿名用户。 我看到,在负载很重的情况下,匿名用户有时会从其他用户获取配置文件值。
我首先删除我的Cookie并获取cookie值.ASPXANONYMOUS中的有效唯一值。 在几次请求后,我为.ASPXANONYMOUS获得了一个新值,该值已被另一个用户使用。 我在我的loggs中看到,总有一些用户在.ASPXANONYMOUS中共享相同的值。
我可以在我的日志中看到,即使两个或多个用户拥有不同的IP,他们也会为.ASPXANONYMOUS获取相同的cookie值。
这里是htttp流量。 在第二张图片中显示更改的cookie(您必须显示图像的全尺寸才能读取日志):
可以正常工作的许多请求之一:
替代文字http://img413.imageshack.us/img413/2711/log1.gif
然后有这一个请求,改变cookie alt文本http://img704.imageshack.us/img704/8175/log2.gif
然后使用新的cookie
替代文字http://img704.imageshack.us/img704/3818/log3.gif
为了安全,我删除了依赖注入。 我不使用OutputCaching。
我的web.config有这个认证设置:
<anonymousIdentification enabled="true" cookieless="UseCookies" cookieName=".ASPXANONYMOUS"
cookieTimeout="30" cookiePath="/" cookieRequireSSL="false" cookieSlidingExpiration="true" />
<authentication mode="Forms">
<forms loginUrl="~/de/Account/Login" />
</authentication>
有没有人知道我还能记录什么,或者我应该看看什么?
UPDATE
我现在看到,我所显示的http流量是完全有效的。 .ASPXANONYMOUS中的值发生变化是由于Cookie被刷新而发生的。 该值包含AnonymousID和时间戳。
这不会导致用户在正常情况下具有相同的.ASPXANONYMOUS值。
问题显而易见的是,每当cokies从AnonymousIdentificationModule中设置,那么有可能有几个用户得到这个cookie。 在我的应用程序中设置cookie不会有这种奇怪的副作用。
我遇到了同样的问题,并且解决方法是关闭输出缓存,以便调用SetCookie的响应。 以下是描述这一点的几个链接
你是否在代码中声明了任何静态变量? 我有这个类似的问题,并缩小到这个范围; 至少对我的情况来说。
链接地址: http://www.djcxy.com/p/45211.html