Постоянный тайм-аут cookie с FormsAuthentication - PullRequest
12 голосов
/ 07 октября 2011

Я создаю некоторые функции «Запомнить меня» как часть входа в систему.

Когда я создаю постоянный файл cookie во время процесса входа в систему со следующими данными:

FormsAuthentication.SetAuthCookie("someusername", true);

И мой Интернет.Config выглядит следующим образом:

<authentication mode="Forms">
  <forms loginUrl="~/sign-in" timeout="2880" />
</authentication>

Как долго будет действовать cookie, прежде чем пользователю будет предложено снова ввести свои данные для входа?Кроме того, существует ли / какой период времени по умолчанию используется при настройке постоянного файла cookie?

Ответы [ 3 ]

17 голосов
/ 07 октября 2011

Я нашел ответ, который искал благодаря этой статье:

WebLog Дэна Селлерса

, где он заявляет:

в ASP.NET 2.0 значение тайм-аута как постоянных, так и сеансовых файлов cookie контролируется атрибутом timeout элемента <forms/>

Так что в моем примере постоянный файл cookie истекает через 48 часов.

3 голосов
/ 15 декабря 2015

timeout упоминается в вашем модуле authentication как:

<forms loginUrl="~/sign-in" timeout="2880" />

timeout = "2880" .Это значение 2880 дается в минутах.Таким образом, если вы разделите 2880 на 60, вы получите 48 часов , что является ответом на ваш вопрос.Пользователи должны будут предоставить свои учетные данные еще раз после истечения 48 часов.

Надеюсь, это поможет.

0 голосов
/ 07 октября 2011

Я считаю, что постоянные куки-файлы действительны в течение неопределенного времени (если, конечно, пользователь не очистит куки-файлы своего браузера).Атрибут timeout просто сообщает аутентификации форм, как долго держать сеанс активным.

Взгляните здесь:

Путаница с использованием метода FormsAuthentication.SetAuthCookie ()

...