Мы используем asp.net 2.x, мы используем состояние сеанса, хранящееся на сервере sql, 2 веб-сервера в балансировке, iis6.Viewstate, кажется, случайно захвачен
Наша проблема заключается в том, что за последние 3 месяца у нас было 2 случая, когда кто-то, пользующийся нашей формой запроса, видел чужую информацию, например. имя и фамилия. Мы не заполняем форму из объектов в сеансе, поэтому я пришел к выводу, что второй пользователь каким-то образом получил представление от первого пользователя после того, как пользователь попытался отправить и получил ошибку, например. опубликовал состояние просмотра и вернул ту же страницу, и другой пользователь запросил эту страницу одновременно (должен был быть на том же сервере, я предполагаю, что это проблема в представлении).
У вас уже было такое чувство? некоторые вопросы, рассматриваемые в моей голове, - это то, как рабочий процесс знает, чтобы переназначить состояние состояния на уникальный запрос и как он определяет уникальный запрос и т. д.
спасибо за статью, мы используем кэш режима ядра или response.output.cache с варьироваться в зависимости от пар, форма запроса не добавляется в кэш вывода. Странно, что это проблема с представлением в представлении, я утверждаю, что статья говорила о объектах сеанса. Главное, что мы используем настраиваемые элементы управления, поэтому viewstate может обрабатываться несколько иначе, плюс тот факт, что в статье упоминается: OutputCacheModule иногда не работает вырезать заголовки Set-Cookie из кешированных ответов, которые он передает Http.sys .. и подключать пользователей ... это может обслуживать один и тот же html в следующем ответе ... – dvr
плюс мы на win2003 – dvr
, если вы не переопределите viewstate управление в ваших пользовательских элементах управления, оно должно быть довольно однородным с остальными элементами управления .net. может стоить его исследовать подробнее .. также может стоить усилий для обновления до более новой структуры .. –