我的想法很简单,我想在我的另一个网站上使用 Discourse 作为 SSO 提供商。Discourse 指引我使用 Discourse Auth Proxy。我已经使用了下面的配置:
#!/bin/sh
# 你需要设置以下环境变量并像这样运行
# 镜像
PROXY_URL=http://0.0.0.0:80
ORIGIN_URL=https://mycustomsite.com
SSO_SECRET=RandomStringSecret
SSO_URL=https://my.discourseforum.com
HOST_PORT=7925
docker run -d --restart=always -e ORIGIN_URL=$ORIGIN_URL -e PROXY_URL=$PROXY_URL -e SSO_SECRET=$SSO_SECRET -e SSO_URL=$SSO_URL -p $HOST_PORT:80 discourse/auth-proxy
在我的 Discourse 论坛中,我已经启用了:
启用 Discourse Connect 提供商
在 Discourse Connect 提供商的密钥中,我输入了 https://mycustomsite.com,并将 RandomStringSecret 作为密钥。但是,我遇到了这个问题:
由于缺少密钥而导致身份验证失败。请联系网站管理员解决此问题。
我尝试解码查询参数中的 payload,并得到了以下数据:
{
return_sso_url: 'http://0.0.0.0:80/',
nonce: '9431ad68-55b3-49a6-8b9a-a1d7209506e7'
}
不确定这是否有帮助,我已经为此奋斗了 2 个小时。请告诉我我是否正确地使用了它。我想为我的网站创建一个基本的 Discourse SSO 提供商,它将为我的网站提供可用的用户数据。
