管理员应该能够通过管理控制台远程注销用户。
当用户登录时,会使用cookies.signed[:user_token]
设置Cookie
用户退出时,Cookie会被cookies.delete :user_token
删除。
我只能访问和删除当前用户向我的rails控制器发送请求的cookie。 Cookie哈希仅包含当前用户的:user_token
和session_store
密钥。
是否可以访问所有登录用户的Cookie并从一个帐户中删除?我找不到任何关于此的信息。
另一种方法:
你们怎么看待这种做法?
答案 0 :(得分:0)
据我所知,cookies存储在用户的浏览器中。你无法删除它们。你可能会以某种方式使它们无效,但是对于每个用户来说,这将是困难的。
在数据库中存储登录状态应该是您正在寻找的解决方案。因此,当用户进入时,您执行常规身份验证,然后检查数据库。如果为0,则表示登录。这样管理员就可以改变那个值。此外,你必须放入一些东西来使会话表中的标志失效