Работает ли проверка подлинности с помощью форм с помощью балансировщиков нагрузки? - PullRequest
15 голосов
/ 29 июля 2010

Я работаю над веб-приложением, использующим проверку подлинности с помощью форм.

    <authentication mode="Forms">
        <forms slidingExpiration="true"
         loginUrl="~/User.aspx/LogOn"
         timeout="15"
         name="authToken"  />
    </authentication>

Я вижу этот файл cookie, установленный в моем браузере при входе в систему:

alt text

Вопрос в том, что происходит, когда я помещаю этот сайт в модель с балансировкой нагрузки?Где устанавливается файл cookie сеанса ASP.net?Я явно не делал это в коде, поэтому я предполагаю, что это происходит за кулисами где-то в ASP.Net.

Кроме того, если cookie сеанса установлен веб-сервером A, я предполагаю, что веб-сервер B выигралраспознать его и считать его недействительным сеансом.Если это так, я, вероятно, не хочу его использовать, верно?

1 Ответ

16 голосов
/ 29 июля 2010

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

        <authentication mode="Forms">
        <forms loginUrl="~/Login/Index" defaultUrl="~/"
                     name=".myportal"
                     protection="All" slidingExpiration="true" timeout="20" path="/"
                     requireSSL="false"></forms>
    </authentication>

    <machineKey validationKey="534766AC57A2A2F6A71E6F0757A6DFF55526F7D30A467A5CDE102D0B50E0B58D613C12E27E7E778D137058E" decryptionKey="7059303602C4B0B3459A20F9CB631" decryption="Auto" validation="SHA1"/>

Сессии могут быть немного сложнее. Вы можете сохранить состояние сеанса ASP.Net в базе данных или использовать поставщика общего сеанса, чтобы сделать его доступным также для балансировки нагрузки.

Вот хорошая статья о сохранении состояния сеанса в БД: http://idunno.org/articles/277.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...