ASPX анонимные файлы cookie нарушаются при изменении ключа компьютера - PullRequest
0 голосов
/ 17 мая 2011

Моя компания недавно столкнулась с резким скачком трафика, поэтому мы попытались запустить дополнительные экземпляры EC2 для обработки нагрузки.К сожалению, это привело к проблемам пользователей с файлами cookie (т. Е. Сайт продолжал запрашивать логин даже после того, как вы указали учетные данные).Мы думаем, что это потому, что мы пренебрегли установкой ключа машины в нашем файле Web.config (файлы Web.config на каждой машине с балансировкой нагрузки в остальном идентичны).

Сейчас мы находимся в положении, когда мымы не хотим устанавливать новое значение ключа машины в Web.config, поскольку это приведет к выходу из системы всех наших анонимных пользователей, которые, возможно, уже добавили элементы в свою корзину и т. д. Но мы также хотим поддерживать масштабирование.

Итак, вопросы:

  1. Правильно ли наше предположение о том, что ключ компьютера является причиной того, что пользователю нужны новые файлы cookie?
  2. Есть ли способ определить текущий или установленный по умолчанию компьютерКлюч, который используется для того, чтобы мы могли скопировать его на другие серверы с балансировкой нагрузки?
  3. В случае ошибки 2, есть ли способ установить новый ключ компьютера без потери данных нашего анонимного пользователя?

1 Ответ

1 голос
/ 17 мая 2011

Вы не упомянули, какой метод аутентификации вы используете, но если это форма аутентификации, то да - ключи вашего компьютера должны совпадать на всех серверах вашей фермы. Вы также должны убедиться, что все ваши машины исправлены одинаково, поскольку было несколько исправлений (в частности, обновления уязвимости безопасности asp.net), которые обновляют биты криптографии.

Если вы используете конфигурацию по умолчанию, клавиша машины, вероятно, установлена ​​на AutoGenerate. Насколько я знаю, не существует простого способа показать, на что установлен автоматически сгенерированный машинный ключ. Однако, поскольку у вас есть доступ к вашему существующему серверу, вы, вероятно, можете найти его с помощью небольшого кода отражения, как показано здесь:

http://aspnetresources.com/blog/how_to_read_auto_generated_machinekey

...