Вы можете сделать недействительной сессию текущего пользователя только путем вызова reset_session
, который делает недействительным идентификатор его сессии.
Сервер не знает, какие идентификаторы сеанса связаны с каким идентификатором пользователя (базы данных) с cookie_store. Он просто отслеживает список допустимых идентификаторов сеанса. Если идентификатор сеанса, указанный в файле cookie, действителен, то Rails дешифрует и десериализует файл cookie хранилища сеанса. Здесь хранится идентификатор пользователя. Поскольку идентификаторы пользователя хранятся клиентом, невозможно выполнить итерацию по хранилищам сеансов и найти идентификатор сеанса по идентификатору пользователя.
Если вы хотите следить за сессиями пользователей, вам нужно использовать другую систему, например, использовать memcached или хранилище сессий базы данных или предоставлять токены.