Ruby on Rails и плагин restful_authentication - PullRequest
3 голосов
/ 01 июня 2009

Я использую плагин restful_authentication для своей страницы входа. Проблема в том, что после того, как я войду в систему как пользователь, я никогда не выйду из системы, пока не нажму кнопку «Выйти из системы». Как установить время ожидания сеанса 15 минут? Например, через 15 минут, если я перейду на какую-либо страницу, меня перенаправят на страницу входа.

Ответы [ 3 ]

3 голосов
/ 01 июня 2009

Время истечения сеанса можно настроить в файле config / intializers / session_store.rb в rails 2.3.

Просто добавьте следующую опцию:

:expire_after => 60.minutes

В качестве альтернативы, вы можете изменить время истечения срока действия на контроллер / действие, используя следующее в before_filter:

request.session_options = request.session_options.dup
request.session_options[:expire_after] = 5.minutes
request.session_options.freeze

Эти инструкции были найдены по адресу: http://squarewheel.pl/posts/3,, который также имеет ссылку на плагин для рельсов <2.3. </p>

0 голосов
/ 14 июня 2011

в вашем приложении. Rb:

  before_filter :update_activity_time, :except => [:login, :logout]

   def update_activity_time
     session[:expires_at] = 60.minutes.from_now #default 60
   end
0 голосов
/ 04 июня 2009

Обратите внимание, что это только устанавливает время истечения срока действия куки, а не время окончания сеанса, проверенное сервером (по крайней мере, с плагином, который я написал для rails <2.3). Чтобы достичь последнего, вам нужно реализовать свой собственный before_filter, который проверяет временную метку в сеансе и сбрасывает ее, если время превышает допустимый предел. Опять же, я не проверял, нужно ли это для> = 2.3

...