我们在负载均衡器 F5 后面部署了 Keycloak。OIDC 客户端位于公共网络中,所有通信均使用“https”。SSL 在 F5 中终止,数据包被转发到 Keycloak(例如在端口 8080 上)。
OIDC 客户端的设计方式是为了使用/token它在请求响应中收到的端点(例如等).well-known/openid-configuration。
这里的问题是,对于客户端期望协议的所有端点, .well-known配置正在使用带有协议的 URL 进行响应。因此,客户端无法与这些 URL 建立安全连接。httphttps
问题是 - 我们如何才能.well-known/openid-configuration通过带有协议的端点来响应请求返回https;就像下面提到的那个
{
"issuer":"https://<domain>/auth/realms/master",
"authorization_endpoint":"https://<domain>/auth/realms/master/protocol/openid-connect/auth",
"token_endpoint":"https://<domain>/auth/realms/master/protocol/openid-connect/token"
.......
}
Run Code Online (Sandbox Code Playgroud)
我们已按照文档中提到的步骤进行操作。
即在 F5 中添加了x-Forwarded-For和x-Forwarded-Proto,并按照文档中的说明进行了相应的 keycloak 配置更改。是否有我可能缺少的配置或设置?