Discourse-saml 不兼容多站点

是的,这正是我刚刚意识到的。非常不幸。:frowning:

所以实际上,插件不兼容意味着:

  1. 它会在多站点中的第一个站点(或通过 DISCOURSE_HOSTNAME 配置的站点)上正常工作
  2. 按钮会出现在所有其他实例的登录界面中
  3. 但这些按钮在没有明确解决方案的情况下会失效。

由于在 Customization > Plugin 中没有关于 discourse-saml 的专门主题,我建议创建一个并在此帖的第一条中提及这个注意事项。我相信可以从 提及 SAML 的 50 多个主题 中进行一些整合。如果我知道这一点,我会以不同的方式设置我的服务。

(顺便说一下,原始的 CSP 错误可能是由于 iframe 尝试加载原始站点而不是当前站点造成的。)

在多站点中隐藏 SAML 按钮

这是一个为在多站点上激活 SAML 插件的人提供的快速修复方法。:slight_smile:

  1. 前往 管理 > 主题 并点击“安装新主题”
  2. 创建新组件(名称为:“隐藏 SAML 按钮”)
  3. 添加 CSS:
    #login-buttons .btn.btn-social.saml {
        display: none; /* 插件与多站点不兼容 */
    }
    
  4. 将该组件应用到所有主题。

现在,SAML 按钮(在此实例中不起作用)将不再显示。