【问题标题】:How can I close all (plone) sessions opened by a user except the current one?如何关闭用户打开的所有(克隆)会话,但当前会话除外?
【发布时间】:2016-07-01 10:08:29
【问题描述】:

假设我在两台或更多设备上打开了两个或更多用户会话(同一用户没有管理员权限)。

在当前会话中,如果我退出,是否意味着所有其他会话也将关闭?如果没有,有没有办法通过 URL 请求来做到这一点?

类似这样的:

  1. 用户调用方法,例如:[plone-site]/close-all-sessions-except-this;
  2. 结果:在其他设备上打开的所有用户会话均已关闭。

如果这个方法是原生的,那就更好了。

gmail 有这个feature。我认为这是一个重要的安全和隐私问题。

【问题讨论】:

  • 我做了一个测试:在两台不同的机器上从一个站点(plone 4.3)打开两个用户会话。从一个注销不会关闭另一个会话。

标签: session plone privacy


【解决方案1】:

不太确定您在问什么,但如果您想自动注销所有经过身份验证的用户(不仅是一个用户),您可以:

  • 去紫米
  • 进入acl_users
  • 选择session插件
  • 在“使所有会话标识符无效”部分中,单击“清除机密”按钮。

如您所见:

点击下面的按钮可以清除所有用于验证的秘密 会议。这将立即注销所有使用会话的用户 验证并要求他们重新登录。

【讨论】:

  • 我只想避免 ZMI。在gmail页面的右下角,有一个名为details的链接。按此链接,将打开一个新窗口,显示所有打开的会话,有一个按钮我可以关闭它们所有打开的会话,除了当前。所以,我在问plone中是否有类似的东西,但避免了ZMI。我只想创建一个指向(不是管理员)用户的链接。现在清楚了吗?
  • Davi Lima 已经回答了,没有这个功能,@keul :(。无论如何,谢谢你的另一个 plone/zope 提示。
【解决方案2】:

这是一个很好的功能请求,您介意opening an issue?AFAIK Plone 默认情况下不包含该功能。

当您注销一个会话时,Plone 将关闭该浏览器和站点 URL 的所有会话,因为该会话存储在设置为站点域的 cookie 中。但是,Plone 不会将您从其他浏览器/设备中注销,也不会在您通过 IP 访问该站点的边缘情况下(如果可用)。

【讨论】:

  • 感谢@Davi 的回答和请求频道。我正在考虑请求它的方式:单一方法或更复杂的用户会话管理器屏幕。此屏幕可能是用户操作视图中的另一个项目。只是一个谦虚的用户意见。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-16
  • 2011-03-20
  • 1970-01-01
相关资源
最近更新 更多