Firefox не позволяет мне установить постоянный файл cookie с помощью FormsAuthentication

У меня есть код, который проверяет форму входа (с возможностью «запомнить меня») и, если он действителен, аутентифицирует пользователя. Затем я устанавливаю файлы cookie для аутентификации форм и перенаправляю.

Файл cookie аутентификации устанавливается следующим образом: аргумент persistent равен true, если пользователь выбрал «запомнить меня».

FormsAuthentication.SetAuthCookie(response.UserObject.UserName, persistent);
Response.Redirect(url);

Мы проверили это в разных браузерах, и в целом все хорошо. Однако в Firefox файл cookie .ASPXFORMSAUTH всегда является файлом cookie сеанса, срок действия которого истекает при закрытии браузера, даже если указанный выше аргумент persistent равен true.

Версия Firefox, которую я тестирую, — 55.0.3 (32-разрядная версия). Это известная ошибка? Или есть какая-то другая причина, по которой Firefox не позволяет мне установить постоянный файл cookie? Может ли быть так, что он больше не принимает постоянные файлы cookie как часть ответа перенаправления 302?


person Tom Troughton    schedule 18.09.2017    source источник
comment
Это помогает? support.mozilla.org/en-US/questions/1046134   -  person Gabriel Luci    schedule 20.12.2017
comment
Эта ссылка не содержала точного решения, но указала мне правильное направление. Спасибо.   -  person Tom Troughton    schedule 21.12.2017


Ответы (1)


Благодаря указателю от @gabriel-luci я нашел решение. В настройках Firefox (about:preferences#privacy) мой браузер был настроен на использование пользовательских настроек для истории и был настроен на сохранение файлов cookie только до закрытия Firefox. Я не помню, чтобы менял это сам, но проверка с коллегами показала, что по умолчанию файлы cookie сохраняются до истечения срока их действия. Так что, если у вас возникла та же проблема, начните с настроек Firefox.

person Tom Troughton    schedule 21.12.2017