我认为这里的区别在于:是保留一个方便选择“公开访问”的方式,还是保留现有的 everyone 组。我同意,每次想要公开访问时都需要选择两个组确实更麻烦,我们可以通过界面(UI)来改进这一点。
例如,我们可以在组选择器中添加一个“公开”快捷方式,一次性同时选中 anonymous_users 和 logged_in_users。这样你会看到两个组都被选中,并且可以移除其中任意一个。这既提供了你所描述的便利性,又保持了底层权限的明确性。我们只会在允许这两个组的地方提供该快捷方式。
保留现有 everyone 组的问题在于,它并不始终意味着“公开访问”。在类别可见性方面,它确实如此,但在大多数基于组的站点设置中,它实际上意味着“所有已登录用户”。此外,正如上面的讨论所示,不同的主题和插件对其解释也各不相同。
因此,我们不能简单地保留它并声称它在所有地方都包含匿名用户,因为这可能会授予之前不存在的访问权限。保留其现有行为会维持这种不一致性,而重命名它也无法解决这一问题。
定义一个一致通用的组是可行的,但这仍然需要我们目前正在进行的迁移和审计工作。此外,在不支持匿名访问的地方,它也必须被禁止,否则我们又会回到“everyone”在那些地方仅意味着“仅已登录用户”的局面。我不得不在许多设置中将 anonymous_users 添加为 disallowed_groups 的值,而在之前 everyone 在这些设置中是允许的。例如:
我倾向于在 UI 中提供这种便利性,底层使用两个明确的组,这样管理员和开发者在所有地方都能保持一致性。