в чем различия между «формами тайм-аута», «членством userIsOnlineTimeWindow» и «сеансом тайм-аута состояния» - PullRequest
12 голосов
/ 01 августа 2011

В чем разница между этими строками кода:

<forms timeout="5" />

<membership userIsOnlineTimeWindow="5" />

<sessionState timeout="5" />

Большое спасибо.

Ответы [ 2 ]

12 голосов
/ 23 августа 2011

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

Членство используется для подтверждения пользователя, а userIsOnlineTimeWindow тамчтобы помочь вам отслеживать активность пользователя, поэтому, когда она закончится, для свойства IsOnline для этого пользователя будет установлено значение false.Одна новая вещь, которую я обнаружил, это то, что она также будет обновлять бланк заявки, пока установлен пользователь isOnline, главное отличие в том, что он не не обновляет сам автоматически, нотолько когда запущены методы GetUser () или ValidateUser () .

Когда время сеанса истечет, вы потеряете данные, найденные в Сессия Объект.Это все.

0 голосов
/ 05 февраля 2017

Обратите внимание на следующее поведение:

Вы установили время ожидания сеанса = 10 минут и время ожидания проверки подлинности с помощью форм = 8 минут.

Пользователь входит на ваш сайт с использованием проверки подлинности с помощью форм.

И сеанс "часы", и проверка подлинности с помощью форм "часы" запускаются.

Предположим, что вы храните некоторую информацию, необходимую для работы сайта в сеансе (например, Session ["userData"] = userData;).

Пользователь простаивает 9 минут.

Через 8 минут сеанс истекает, а данные пользователя очищаются.

Через 9 минут, когда пользователь пытается выполнить какие-либо действия на сайте, вы наивно ссылаетесь на Session ["userData"], чтобы получить его информацию.Поскольку он равен нулю, он получит ошибку 500 для нулевой ссылки.

Вывод: оставьте тайм-аут аутентификации форм короче, чем тайм-аут сеанса.

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