Настройка ключа машины при использовании IIS с балансировщиком нагрузки
Ключ машины (Machine Key) используется на каждом сервере под управлением IIS для шифрования файлов cookie. Если несколько серверов в кластере имеют различные ключи машины, файлы cookie, созданные на одном из серверов, не смогут быть использованы на другом. Это может стать причиной непредсказуемого поведения веб-приложения. Например, пользователю, успешно авторизовавшемуся на одном сервере, может потребоваться вводить данные для входа повторно, потому что балансировщик нагрузки переключил его на другой сервер, где используется иной ключ.
После создания нового ключа машины все существующие на данном сервере файлы cookie становятся недействительными, и пользователи будут перенаправлены на страницу входа.
Настройка Machine Key
1. Для задания Machine Key необходимо перейти в Диспетчер служб IIS, выбрать нужное веб-приложение и в блоке ASP.NET выбрать Machine Key.
2. На всех серверах кластера будет использован одинаковый ключ, поэтому необходимо отключить оба чекбокса "Автоматически формировать во время выполнения" (Automatically generate at runtime).
3. Выберите методы шифрования и проверки из выпадающих списков (рекомендуется оставить значения по умолчанию). Нажмите "Сгенерировать ключи" в окне справа. Ключи будут сгенерированы автоматически.
4. Скопируйте и сохраните ключи для последующей настройки на других серверах.
5. Повторите шаги 1-3 на остальных серверах кластера, указывая в полях ввода созданные на шаге 3 ключи.