如何将AuthLogic配置为仅针对特定用户(管理员)的会话超时?

时间:2012-06-14 18:35:19

标签: ruby-on-rails ruby-on-rails-3.1 authlogic

我们有一项业务要求,即一段时间不活动后,某些用户会自动退出我们的应用程序。其他用户可以保持登录状态,不应该超时。我们使用AuthLogic和Rails 3进行会话管理。

如何为某些用户暂停AuthLogic会话,而不是其他用户?

1 个答案:

答案 0 :(得分:1)

用户必须拥有last_request_at列,然后将其添加到UserSessions模型。您可以在陈旧中执行任何您喜欢的检查吗?此处仅对管理员发生超时。

logout_on_timeout true

def stale?
  user.present? && user.admin? && super
end