被禁言的用户可以通过匿名模式绕过限制

当用户被禁言时,进入匿名模式允许发布内容而不受限制。
Discourse 3.3.0.beta6

4 个赞

暂停已进入匿名模式的帐户也不会暂停(或注销)匿名帐户。

1 个赞

被静音的用户是哪个TL?

1 个赞

已在 TL=1 测试用户上进行测试。

1 个赞

匿名发帖允许的群组 设置的值是多少?

1 个赞

TL=0,各位。

1 个赞

哇,我很惊讶人们不会滥用它。

另外,也许可以将其限制在一个包含所有人的特定组中?然后,如果您不希望用户进入匿名模式,就将他们移除?
或者,将其限制在 TL1,并将此用户降级到 TL0?

3 个赞

当然,我可以解决这个问题。我正在报告引擎中的错误。

5 个赞

我明白了。我只是提供了一个变通方法。

3 个赞

更简单?长期解决方案是禁用来自被静默用户的匿名模式 :thinking:

5 个赞

我认为可以通过在以下位置添加 return if user.silenced? || user.suspended? 来修复此问题:

顺便问一下,我想知道为什么 can_post_anonymously 的权限检查没有在 Guardian 模块中实现。

3 个赞

我们在 3.4.0beta3 版本上也遇到了同样的问题。有人能确认 3.4.0beta4 版本是否已修复此问题吗?

1 个赞

我确认 3.5.0.beta2-dev 版本并未修复此问题。

1 个赞

理想情况下,处于匿名模式的用户应受到与未处于匿名模式时相同的限制。

1 个赞

我认为这是公平的,@hugh 我们应该为此加上 pr-welcome 吗?

3 个赞

好的 - 已添加标签!

另外,我将 @osama 也加入进来,因为他最近对匿名模式做了一些工作,所以他可能对此有更直接的见解。

3 个赞

TL0 被禁言的用户可以创建匿名账户,该账户很快会变成 TL1,因此可以(当然,取决于论坛 TL 设置)使用 PM、提交帖子等。

1 个赞

你好! :waving_hand:

我们刚刚合并了一个修复程序,该程序可以确保在匿名模式下,此处会尊重所有者账户的“静默”状态:

6 个赞