支持 OIDC 后台注销

我非常希望核心 OIDC 插件能够支持OpenID Connect 后通道注销。引入后通道注销功能后,身份提供商(IdP)将能够远程使会话失效,从而让单点注销(Single-Sign-Out)正常工作(用户可以从另一个服务注销,无论该服务是直接连接到 IdP 的,还是通过 RP 发起的注销连接到 IdP 的其他服务;当他们这样做时,他们也会从 Discourse 中注销)。这也使得 IdP 中的“注销所有会话”中央功能能够正常工作。

我很乐意自己研究如何实现这个功能,但由于需要存储 IdP 提供的会话 ID,以便之后将来自 IdP 的注销请求与 Discourse 中正确的会话关联起来,鉴于我是首次贡献者,我可能需要一些帮助(哈哈)。不过等我时间充裕一点的时候,我会尝试着手去做,如果遇到问题我会再回来反馈。

1 个赞

这确实是一个产品缺口。

如果您希望由更有经验的人来处理此事,并且能够安排预算,请考虑 Marketplace

很遗憾,我基本上没有任何预算,所以只能尽力自己写一个补丁。我在软件开发方面很有经验(我所管理的论坛实际上就是为我正在开发的软件而设立的,哈哈),只是以前从未接触过 Discourse 的代码库,它看起来有点让人望而生畏,哈哈。我觉得我已经对需要做的事情有了比较清晰的想法,只是需要了解 Discourse 插件的结构(看起来这方面的文档相当完善,我想应该不难弄清楚,只是我还没来得及去研究。)