Discourse-saml,选择解决方案

我读了这篇文章:

内容很好,但它是云服务。您能推荐一个类似的自托管服务吗?也许有经过 Discourse 测试的软件?

哪个是云服务?

您正在尝试对什么进行身份验证?

我们拥有多个网络服务,此外还有面向不同受众的多个 Discourse 实例。目前,每个服务及其对应的 Discourse 都安装了 Drupal 7,用于为该服务和 Discourse 提供单点登录(SSO)。这种模式已多次重复。用户总数超过 10,000 人。

我希望为所有服务和 Discourse 实例创建一个统一的用户库,构建一个能在各处实现透明认证的 SSO 系统,同时摆脱对 Drupal 的依赖。

该 SSO 系统不应是云端服务,而应部署在我们自己的服务器上。Auth0 和 OneLogin 均为云端系统。

因此,我想请教一下,您会推荐选择哪种方案。

最简单的解决方案是使用单个 Drupal 实例来托管所有 Discourse 站点,您应该已经知道如何操作。如果您想彻底摆脱 Drupal 的层级结构,可以设置一个 Discourse 站点作为所有站点的 SSO 服务器。

不,将 Discourse 作为 SSO 提供商的方案并不合适。Drupal 确实需要移除。请问是否有任何将 Discourse SAML 插件与开源 IdM/IAM 成功集成的案例?

你尝试使用 SAML 有什么特殊原因吗?我们提供 OpenID Connect 和 OAuth2 的插件,通常配置起来要简单得多。

我们尚未对任何身份提供商(IDP)进行官方测试。不过,在 Google 上搜索“开源 idp”时,排名第一的结果是 Keycloak。如果你在 Meta 社区中搜索,会发现其他人已成功通过我们的 openid-connect 插件实现集成(例如这里)。或许可以尝试以此作为起点进行实验?

使用 OAuth2 Basic Plugin 有一个大问题:如果用户是 Discourse 的新用户,那么在身份验证后,会弹出一个显示新用户数据的窗口。
您,@david,在另一个主题中回答过我,说您会在将来自动创建用户,而不再显示这个窗口。但截至目前,该功能尚未实现。

因此,我在 SAML 问题上备受困扰。我需要尽快找到解决方案……

看起来 Keycloak 也支持 SAML,因此您仍然可以尝试使用它。

我可以向你们订购插件和 Keycloak 的付费配置吗?)))
我尝试过,但无法配置 SAML 和 Keycloak。

discourse.org,我们为我们的客户提供一对一支持,但不支持自托管站点。您可以尝试在 Marketplace 中发帖。

@david 您提到,使用 SAML 插件时,如果用户不在 Discourse 数据库中,创建新用户的窗口不会显示。那么,它显示如下:

您需要在 app.yml 文件中将 DISCOURSE_SAML_AUTO_CREATE_ACCOUNT 设置为 1。

太棒了!!!!!!!!!!!!!!!!感谢 @david

但是……为什么文档里没有提到这个选项?)))