第44章 Suspend 扩展——暂停用户访问
版本:2.x 禁止访问扩展
Suspend 扩展(flarum/suspend)允许版主将成员暂停访问,时长可为若干天或无限期。这是一个捆绑扩展,默认处于启用状态。
暂停访问的效果
当成员处于暂停访问状态时,系统将其视为仅属于 Guest(访客)组的用户。在其暂停期间,该成员原有的群组及随之而来的权限均会被忽略。
具体来说,该成员仍可登录并阅读访客可访问的内容,但无法发起讨论、回复、点赞或执行其他访客无权操作的行为。如果你赋予了访客额外权限,处于暂停状态的成员同样会获得这些权限。
如果启用了 Messages(私信)功能,处于暂停状态的成员无法发送私信,其他成员也无法向他们发送私信。管理员以及拥有“无私信权限下仍可给用户发消息”权限的群组除外,他们依然可以发起私信,且该成员可以在此对话中回复。
由于成员原有的群组并未被移除,暂停期结束后一切将恢复原状。
权限
该扩展在管理后台的“权限”页面“Moderate(管理)”分类下增加了一项权限。
权限 | 默认值 | 描述 Suspend users(暂停用户) | 版主(Mods) | 暂停或恢复成员的访问权限,并查看当前被暂停的用户。
管理员无法被暂停访问,且任何人不能暂停自己的访问权限。
暂停成员操作
打开成员的控制菜单(位于其个人资料页或点击其名称后弹出的卡片上),选择“Suspend”。对话框包含以下内容:
暂停状态:未暂停、无限期暂停,或设定天数的限时暂停。 暂停原因:供你的管理团队内部参考的备注。只有拥有暂停权限的用户可见,被暂停的成员永远无法看到此内容。 展示给用户的消息:告知该成员的内容。如果留空,则除告知其已被暂停外不提供其他说明。
限时暂停会在时间到期时自动结束,无需你或调度器进行任何操作。无限期暂停则需等待版主手动解除。
成员看到的内容
当成员被暂停时,系统会向其发送一条通知和一封邮件。邮件中会包含展示的给用户的消息,或者说明未提供具体原因。
如果你设置了展示消息,该成员下次打开论坛时会在对话框中看到此消息以及暂停的结束时间。每次暂停期间他们只会看到一次。
在暂停期间,该成员拥有一个“Suspended(已暂停)”徽章。只有该成员本人以及拥有暂停权限的用户可以看到此徽章。
修改或解除暂停
再次打开“Suspend”对话框以修改时长、原因或消息,或者选择“Not suspended(未暂停)”来解除暂停。解除暂停会清除原因和消息,并向该成员发送通知和邮件,告知其访问权限已恢复。
对当前暂停状态的任何更改(包括仅编辑原因或消息)都视为一次新的暂停:该成员会再次收到通知和邮件。
当限时暂停自然到期时,系统不会发送任何通知。
查找被暂停的成员
拥有暂停权限的用户可以在管理后台的“用户”页面搜索 `is:suspended` 来查找所有当前被暂停的用户。使用 `-is:suspended` 则可查找所有未被暂停的用户。
审计日志
当启用 Audit(审计)扩展时,暂停操作会被记录为 `user.suspended`,解除暂停操作会被记录为 `user.unsuspended`。请参阅 Flarum Suspend 在 Audit 已记录操作列表中的条目。
当成员通过 GDPR 扩展执行匿名化操作时,其暂停状态及其原因和消息将被一并清除。