Rails, CookieStore против ActiveRecordStore - PullRequest
1 голос
/ 12 августа 2010

У меня сейчас странная проблема с выходом из системы наших пользователей.Я не смог воспроизвести это явно.

Приложение Rails использует CookieStore по умолчанию.

Моя первоначальная гипотеза состоит в том, что каким-то образом данные сеанса в файле cookieили даже само печенье уничтожается.Это может быть либо из-за пользовательской очистки данных браузера, либо из-за того, что в системе не было перехвачено.

На данный момент система аутентификации, кажется, функционирует как задумано (Authlogic), и мы не испытываемпроблема широко распространена в других компонентах приложения.

Я рассматриваю возможность использования ActiveRecordStore, чтобы проверить, решена ли проблема.Насколько я понимаю, данные сеанса будут храниться в базе данных, и если cookie будет удален - пользователь не выйдет из системы.

Есть ли много известных плюсов / минусов использования CookieStore против ActiveRecordStore?

Почему CookieStore используется по умолчанию при создании приложения Rails, а не ActiveRecordStore?

Ответы [ 2 ]

5 голосов
/ 12 августа 2010

Я могу ответить на ваши последние два вопроса.

  • Не следует использовать хранилище файлов cookie, если вы храните конфиденциальные данные в сеансе, поскольку вы хотите, чтобы такие данные находились на сервере.на стороне клиента, а не на клиенте.

  • По умолчанию хранилище файлов cookie, поскольку Rails дает вам сильный намек на то, что вам не следует хранить большое количество данных в сеансе в силутот факт, что размер файлов cookie ограничен 4 КБ.

0 голосов
/ 22 мая 2012

Я думаю, CookieStore используется по умолчанию, потому что это просто. Не требует таблицы базы данных.

CookieStore не так безопасен, как ActiveRecordStore. С CookieStore перехваченные куки-файлы дадут доступ к действительному сеансу навсегда, даже если вы создадите новый. С ActiveRecordStore вы можете аннулировать сеанс, удалив его из базы данных.

Смотрите это сообщение в блоге: http://www.bryanrite.com/ruby-on-rails-cookiestore-security-concerns-lifetime-pass/

...