“部分”SSO是否可行?

我很高兴看到 SSO 与邀请功能之间的兼容性特性,但在我这边似乎无法正常工作。

我的主站运行在 WordPress 上,并使用 WP Discourse 插件将两个应用集成在一起。我还有一个注册表单,在 WordPress 上进行邮箱验证,并且我编写了自定义代码,以防止 Discourse 在用户注册时发送重复的验证邮件。我已在 Discourse 中启用了 must_approve_users 选项,以防止任何人在未获批准的情况下访问社区。

我按照以下步骤操作,但最终用户仍未获得批准。和之前一样。

  1. 通过邮箱地址邀请用户
  2. 用户打开邀请邮件并点击链接
  3. 用户被重定向到 Discourse 的未登录页面,显示欢迎信息和继续操作的 CTA 按钮
  4. 点击 CTA 后,用户被带到 WordPress 的登录页面
  5. 由于该用户尚未在 WordPress 注册,我不得不为其创建新账号——我认为这是合理的,因为 WordPress 并不知道该用户是由 Discourse 邀请的
  6. 注册完成后,我收到来自 WordPress 的确认邮件。我点击该邮件中的链接,被重定向到 WordPress 的登录页面
  7. 在 WordPress 登录后,我尝试访问社区,但无法进入
  8. 我进入管理员账户检查该用户的状态,果然如我所料,状态为“待批准”。这与我发送邀请之前的情况完全相同

我遗漏了什么?是否有其他流程需要遵循?是否只能邀请已经在 WordPress 上注册的用户?希望能得到一些指导。谢谢。

我的 Discourse 版本:2.8.0.beta1