这只是一个澄清性问题。
我已开始按照 Docker 指南 在本地运行 Discourse。
我可以看到设置 Google 登录的选项,但 OpenID Connect 插件中描述的那些选项却一个都没有?
插件列表 表明,所有 OAuth 选项仅在商业版计划中可用。
我的问题是:
- 标准插件(列在 此处)是否与 Docker 发行版中捆绑的插件相同?
- 如果是,你们是否支持像 Google 这样的 OAuth 选项,而不是像 OpenID Connect 这样的开放标准?
这只是一个澄清性问题。
我已开始按照 Docker 指南 在本地运行 Discourse。
我可以看到设置 Google 登录的选项,但 OpenID Connect 插件中描述的那些选项却一个都没有?
插件列表 表明,所有 OAuth 选项仅在商业版计划中可用。
我的问题是:
没错。根据 https://meta.discourse.org/t/openid-connect-authentication-plugin/103632/,您需要安装 GitHub - discourse/discourse-openid-connect: Allows an OpenID Connect provider to be used as an authentication provider for Discourse · GitHub 插件。
部分功能属于 Discourse 核心功能,已包含在基础 Docker 镜像中。其余功能(如 OpenID Connect、自定义 OAuth2 及其他插件)可通过我们 100% 免费且开源的 官方插件 添加,具体方法请参照 https://meta.discourse.org/t/install-plugins-in-discourse/19157。当您自行托管时,可以安装任何插件(无论层级),因为它们都在 Meta 上提供且均为开源。
了解。目前我仅在 Docker 上运行以进行一些本地实验,但未来会选择托管方案。因此,这似乎并未完全回答您的问题:在托管方案中,是否必须支付“商业版”费用才能使用 OpenID Connect。
是的,根据 Plugin directory | Discourse - Civilized Discussion 的信息,这也是正确的。
我想评论说,我觉得这种情况不太令人满意。
必须支付更多费用才能使用开放标准,而不是与有限几家选定公司进行专有集成,这反而强化了它们的垄断地位。
更令人恼火的是,其中一些服务也支持 OpenID Connect。
https://accounts.google.com/.well-known/openid-configuration
附注:我从事替代身份提供商 https://did.app 的开发工作,因此致力于推广 OpenID。不过,我最近正在研究 Discourse,因为有一个潜在客户可能会使用我们的免费层级(活跃用户少于 1000 人)。然而,如果使用托管版 Discourse,对他们来说成本太高了。
我想他们要么选择自行部署,这很可惜,因为我之前使用过托管版并且很喜欢;要么就只能选择其他方案。
是否有可能让 OpenID 与专有集成享有同等的可用级别?
不妨换个角度想一想,考虑一下你提出的要求。
托管公司会在基础套餐中预装最流行的插件,因为这更容易推销,而且成千上万个客户端实例保持一致性可以降低支持成本。他们并非手动创建每个实例,而是通过自动化完成一切。
你上面提到的功能甚至都不是插件。“使用 Google 登录”和“Facebook 登录”是核心功能的标准组成部分,多年来一直如此,因为它们的使用非常广泛。
再想想 OpenID 插件,它大约是在 15 个月前首次发布的。将其随意安装到数万个环境中是没有意义的,因为只有极少一部分客户会使用它。这样做会 complicates 这些安装过程,并使每个实例消耗略多的资源,从而增加该服务层级的支持和运营成本。
没有人强迫你支付更多费用来使用开放标准,这是对情况的严重歪曲。在这里,没有人强迫你支付任何费用,任何人都可以自由选择遵循标准安装流程,在 5 美元的 DigitalOcean 实例上自行安装该插件。费用的增加是为了应对更高的复杂性、更多的资源需求以及随之而来的更高支持成本。
这正是问题的关键所在:与更知名的提供商相比,OpenID 仍然“规模较小”。你希望 OpenID 被视为顶级选项,因为这符合你雇主的战略,但过早这样做会破坏所有托管提供商的战略。
在这种情况下,你确实有选择权。如果你认为在基础托管套餐中将 OpenID 作为标准选项是一个有吸引力的选择,那为什么不自己提供托管服务呢?
反之,如果你自己不愿意这样做,又凭什么期望别人这样做呢?
附注:我在英国与教育客户合作了大约 12 年。OpenID 在 2014 年进入我们的视野,我看到一些网站将其用于取得巨大成功。我仍然不主张将其集成到小型社区中,因为它并不适合这些群体。也许 did.app 能改变这一点,但指望提供商铺红毯迎接并不会让你更接近那个目标。
暂时从另一个角度看问题,想想你正在要求什么。
我并不是想以对抗的态度表达我的观点。
你上面提到的功能甚至都不是插件,“使用 Google 登录”和“Facebook 登录”是核心功能的标准配置,并且已经存在多年,因为它们都被广泛使用。
这正是我对整个互联网感到不满的地方:这些过度扩张的服务无处不在。我完全理解讨论为何会发展到这一步,只是想询问 OpenID 是否有可能达到与其他服务同等的普及程度,并接受“永远不可能”这样的答案。
我怀疑当前的局面总有一天会(或许现在已经是)触犯反垄断法。开源项目本身无需为此操心,但提供付费托管服务的公司很可能需要考虑这一点。
不过,这并不是我想依赖的论点,而且这个问题短期内不会解决,也无法在论坛讨论中得出结论。
没有人强迫你为使用开放标准支付更多费用,这是对情况的严重歪曲。这里没有人强迫你支付任何费用,任何人都可以免费在 5 美元的 DigitalOcean 实例上按照标准安装流程自行安装插件。
这是一个稍微偏离主题的点。
我喜欢托管选项,我之前曾在一个项目中使用过 Discourse 托管服务。我们使用了 SSO 集成,一切运行良好。
当时我正打算向一群完全没有技术背景的人推荐托管版 Discourse,他们可能甚至没听说过 DigitalOcean。我告诉他们,每月 100 美元绝对物有所值,尤其是对于刚开始使用的人来说。当然,自行托管总是可行的,但他们并不想这样做,而且老实说,我欣赏这种支持 Discourse 的方式。
如前所述,我完全理解当前的立场,可以接受并适应这种情况。
但难道这不正是像 Communiteq(原 DiscourseHosting)这样的服务提供商发挥作用的地方吗?他们的托管产品略有不同,而且 他们起价为每月 40 美元的专业计划 允许使用额外的“知名”插件。
这……几乎不可能。如果确实存在需求,自然会有人来满足它。
在某种程度上,这正是开源的核心所在。