OpenID Connect 和 SSO

我想使用 OpenID Connect(Keycloak)作为 SSO 解决方案,并将 Discourse 作为其中一个客户端。

我已在 Discourse 中安装并配置好了 OpenID Connect 身份验证插件,但似乎有些 SSO 功能并未生效,我也不确定 SSO 功能与该 OIDC 插件的功能在哪些方面存在重叠。

根据 SSO 同步登录状态提示,应该可以通过类似 fourm.example.com/session/sso 的 URL 直接使用 SSO 登录,但仅安装 OpenID Connect 身份验证插件时似乎并没有该功能。尝试同时配置 enable_ssosso_url 选项后,反而导致系统无法正常运行。

该如何正确使用 OIDC 配合 SSO?

在 Discourse 中,"SSO"指的是以下协议:https://meta.discourse.org/t/discourseconnect-official-single-sign-on-for-discourse-sso/13045(我们正计划将其更名为 DiscourseConnect,因为目前这个名称非常令人困惑!)

若要使用 OpenID Connect,请勿启用 enable_sso 或设置 sso_url

如果 OpenID Connect 是唯一启用的登录方式,那么将用户重定向至 /login 即应启动认证流程。

3 个赞

好的,谢谢。这是否意味着需要禁用 Discourse 默认的内置(用户名/密码)认证?还是可以作为选项保留?

这取决于您的选择。您可以使用 enable_local_logins 设置来控制它。

如果保持启用状态,访问 /login 将向用户呈现登录选项供其选择。如果禁用它,则会自动启动 openid-connect。

2 个赞

This topic was automatically closed 0 minutes after the last reply. New replies are no longer allowed.