Разные пользователи получают одно и то же печенье - значение в .ASPXANONYMOUS - PullRequest
7 голосов
/ 15 марта 2010

Мой сайт позволяет анонимным пользователям. Я видел, что при большой нагрузке анонимные пользователи иногда получают значения профиля от других пользователей.

Сначала я удаляю свои куки и получаю действительное уникальное значение в значении куки .ASPXANONYMOUS. После пары запросов я получаю новое значение для .ASPXANONYMOUS, которое уже используется другим пользователем. Я вижу в своих журналах, что всегда есть пара пользователей, которые имеют одинаковое значение в .ASPXANONYMOUS.

Я вижу в своих журналах, что 2 или более пользователей получают одинаковую кухню для .ASPXANONYMOUS, даже если у них разные IP.

Вот трафик htttp. На втором изображении показан изменяющийся файл cookie (Вы должны отобразить изображение в полном размере, чтобы прочитать журнал):

Один из множества нормально работающих запросов:

альтернативный текст http://img413.imageshack.us/img413/2711/log1.gif

Тогда есть один запрос, который изменяет cookie альтернативный текст 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 при нормальных условиях.

Проблема действительно в том, что всякий раз, когда коки устанавливаются из модуля AnonymousIdentificationModule, есть вероятность, что пара пользователей получит этот cookie. Установка cookie в моем приложении не имеет такого странного недостатка.

Ответы [ 2 ]

3 голосов
/ 23 сентября 2011

У меня была та же проблема, и решение было отключить кэширование вывода для ответов, где вы вызываете SetCookie. Ниже несколько ссылок, описывающих это

1 голос
/ 18 марта 2010

Вы объявляете какие-либо статические переменные в вашем коде вообще? У меня была такая же проблема, и я сузил ее до этого; по крайней мере, для моей ситуации.

...