控制用户:如何使用/访问

大家好。

是否可以控制(允许/拒绝)给定(特定)用户使用 iframe(最明显的是嵌入式视频)的能力?

添加此内容,在我重新阅读时已经过去了一段时间。最少的是——如果技术上负担如此之大,几乎不可能,那么就将其设置为 员工 对比其他人,或者也许按 信任级别 来设置

而且,由于我是一个完全的新手——同样/类似的问题也适用于 Discourse 中用户“权限”的其他方面。是否有涵盖这些方面的手册页?

我创建了一个主题组件,可以查找 Strava 和 Garmin 的 one-box 并用 iframe 替换它们。如果你想支持固定数量的视频网站,类似的解决方案可能也会奏效:

1 个赞

@pfaffman 您的回复与我的问题有关吗?

我只是想问,是否可以通过 Discourse 的“常规”管理方式,来允许/禁止使用 iframe(或 onebox 或最合适的技术术语)的(嵌入、解析或渲染)?

如果您在回复中指的是可以以这种方式重新利用的代码,那么这不适合我,我不是 Web 开发人员。

但如果 @devel 在这里看到——我刚开始使用 Discourse,但作为许多事物的管理员已有多年经验,我想知道:

  • 您是如何决定用户“自由”地包含任何内容的“哲学”方面的(比如说,仅限于视频)?

在我看来,像嵌入式视频内容这样关键的东西——即使是托管/提供商也无法 100% 控制其内容——应该(必须)在每个用户/组的基础上进行精细控制(就像我所知的其他所有不同的计算机系统处理任何此类/类似的关键功能一样)。

因此,我想提交一个建议,作为未来的增强功能——如果 Discourse 尚未考虑过这一点,如果 Discourse 今天还没有这种控制能力的话——可能在不久的将来包含这种“加固”机制/技术。我相信很多人会感谢这个出色的软件解决方案——Discourse 显然已经是了——变得更好。

1 个赞

默认情况下,Discourse 不允许用户在帖子中插入大多数 iframe 元素。这由 allowed iframes 站点设置控制。该设置接受一个允许添加到帖子的 iframe 的 src 域列表。

但是,没有办法根据用户的权限来控制可以添加哪些 iframe——没有 staff allowed iframes 设置。

在大多数情况下,Discourse 使用“oneboxes”处理嵌入外部内容。这允许用户在帖子中插入链接。在某些情况下,Discourse 会将这些链接转换为 iframe。例如,如果一个指向 YouTube 视频的链接被添加到帖子编辑器中的单独一行,它就会被转换为一个在 iframe 中显示的视频元素。Discourse 以这种方式处理的域数量有限。例如,Vimeo、YouTube。

您可以使用 allowed onebox iframes 站点设置来限制哪些域可以进行 iframe onebox。此设置的默认值为 *。如果您想限制此设置,请单击该设置下方显示的下拉输入框。它允许您从 Discourse 配置为 onebox 为 iframe 的域列表中选择特定域。

3 个赞

为了补充 @simon 的回答并解决这个特定问题,您可以将 max oneboxes per post 设置为 0 来完全禁用 oneboxing,这也将禁用来自 Youtube 和 Vimeo 等视频的内容。

2 个赞

如果该参数/值可以由“每个用户的值”进行补充和覆盖——同样,也许是在未来的开发/版本中——我相信很多人会非常感激。谢谢。

对我来说似乎不起作用。我将其设置为 0,但用户创建的带有 iframes 的帖子仍然如预期显示,带有框架/播放器并正常播放。
是否还有其他参数/选项可以覆盖此设置?
另外,如何理解此上下文中的允许的 iframe

max oneboxes per post(每帖最大 onebox 数)设置控制可以添加到帖子的 onebox 数量。这里的术语可能令人困惑,但“onebox”是 Discourse 处理来自各种来源链接的方式。例如,如果浏览器地址栏中 YouTube 或 Vimeo 视频的链接单独放在帖子的一行中,Discourse 将为该链接生成一个 onebox 视频播放器。

如果将 max oneboxes per post 设置为 0,用户将无法创建此类 onebox。

我认为您发现的是该设置并未阻止用户将 iframe 元素添加到帖子中。要阻止用户将 iframe 添加到帖子中,请删除您站点 allowed iframes(允许的 iframe)站点设置中列出的任何 iframe 源。以下是该设置的默认值:

@simon - 好的,谢谢。似乎确实是这样,是的,我想我现在更清楚那里发生了什么——如果一个 URI 存在 iframe,那么 max oneboxes per post = 0iframes 没有任何意义。
是的,术语和描述可以改进,以帮助新用户。

重申一下——是否不可能只允许管理员/版主使用 onebox 和 iframe?

我认为 Simon 已经回答了这个问题。

1 个赞

@Lilly 你/devel 能为未来的版本将其设为“功能请求”吗?谢谢。我相信 Discourse 这样增强和强制执行了很多!会喜欢的。

有多少用户实际请求过这个?如果你愿意,你也可以自己创建这个#功能请求。

不是用户,是我作为管理员——我在几篇帖子之前已经尽力阐述了我的理由。