我想在用户使用 Devise 注销时使会话无效,当用户注销时我有一个回调要捕获,以更好地防止会话劫持。
class ApplicationController < ActionController::Base
def sign_out(*args)
super(*args)
reset_session
end
end
我的理解是,这将删除存储在服务器端的会话信息,从而使其无效。
但是,我仍然可以使用退出前获得的会话 ID 登录。我误解了它是如何工作的吗?我只想使这个会话无效,而不是全部。
我使用 session_store 的默认值。