我在 Docker-compose 网络中运行 Keycloak、keycloak 安全代理和一个 ui 应用程序。当我尝试访问该网页时,我得到了一个登录页面,我可以使用它 - 但我没有成功重定向,而是收到以下错误:
> Aug 03, 2018 1:13:24 PM org.keycloak.adapters.OAuthRequestAuthenticator resolveCode
ERROR: failed to turn code into token
java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
Run Code Online (Sandbox Code Playgroud)
无论我代理什么类型的应用程序,或者我在 Docker-compose 中运行它还是仅仅作为一个节点运行它,我都会收到这个错误。当我尝试使用 python 适配器而不是安全代理时,它也可能出现。
整个网络运行在公司代理后面,这可能是原因吗?
考虑到代码似乎是发送的(见下文),看来 Keycloak 至少可以验证用户。但我对如何解决这个问题感到困惑。有没有人有任何想法?
我的 proxy.json 文件是:
{
"target-url": "http://localhost:7005",
"bind-address":"0.0.0.0",
"http-port":"8080",
"applications":[
{
"base-path":"/",
"adapter-config":{
"realm":"realm",
"resource":"realm_ui",
"auth-server-url":"http://localhost:8800/auth",
"ssl-required":"external",
"credentials": {
"secret":"secret"
},
"confidential-port":0
}, …Run Code Online (Sandbox Code Playgroud)