Тайм-аут разработки для Rails: token_authenticatable? - PullRequest
0 голосов
/ 16 декабря 2011

знаете ли вы, как настроить время ожидания для стратегии token_authenticatable для устройства на Rails?

Я установил: timeoutable и: token_authenticatable

 devise :database_authenticatable, :registerable,
           :recoverable, :trackable, :validatable, :timeoutable,
          :token_authenticatable, :lockable

Если я войду в систему с именем пользователя и паролем, время ожидания будет правильно учтено, и меня снова попросят повторно войти в систему, в то время как токен, который я установил при входе в систему, не дает никакого времени ожидания, и он всегда действителен, пока я не выполню правильный выход из системы (как я установил current_user.reset_authentication_token! в методе destroy). Есть ли простой способ установить тайм-аут токена не слишком навязчиво (т.е. изменить код устройства) или без взлома (т. Е. Получить задание cron, которое регулярно проверяет последний sign_in и сбрасывает токен при необходимости)?

спасибо

1 Ответ

1 голос
/ 07 февраля 2012

Я проделал аналогичную работу с граблями:

namespace :app_name do
  desc "reset all auth_tokens"
  task :reset_auth => :environment do
    users = User.find(:all)
    users.each do |user|
      user.reset_authentication_token!
    end
  end
end

А потом cron:

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