nylen
(James Nylen)
1
如果在将 Discourse 用作 SSO 提供商时未正确配置 sso provider secrets 设置,浏览器中将显示通用的 500 错误消息,而日志中则会显示令人困惑的错误信息:
TypeError(无法将 nil 隐式转换为 String)/var/www/discourse/lib/single_sign_on.rb:114:in `hexdigest’
根据所遵循的代码路径,这看起来是意外情况,我认为应改进此错误消息:
- 在日志中,指出 SSO 提供商配置错误或存在未经授权的尝试
- 在浏览器中,显示更合适的错误消息(可能是
HTTP 400 Bad Request 或 403 Forbidden)
更多详情请参见此处(或许管理员或版主可以帮我将该帖子移动到此新线程):
请注意,此问题出现在 wp-discourse WordPress 插件的上下文中,但该问题与特定于该插件的内容无关。
nylen
(James Nylen)
3
如果该设置留空(更具体地说,我认为只要与传入的 SSO 请求关联的域没有密钥),就会出现这种情况。
啊哈,如果设置项为空,我在这里支持一个更友好的错误提示 @eviltrout 你能处理这个,还是指派给其他人?