当前位置: 首页 > 知识库问答 >
问题:

Jetty反向代理背后的Keycloak服务器

魏雅惠
2023-03-14

我已经嵌入了在7000端口上运行的Jetty。另外,我有一个keycloak服务器运行在同一台机器的端口8100上。
我的所有客户端访问都通过Jetty进行,即localhost:7000。因此,我将keycloak作为Jetty上的反向代理,即localhost:7000/keycloak/auth将重定向到localhost:8100/auth。它击中正确。

现在,有KeycloakInstalled客户机对用户进行身份验证。我提供了auth-url作为http://localhost:7000/keycloak/auth。当我运行这个客户机时,它正确地验证了用户,但是当恢复令牌时,它会发出一个异常,即给它的auth-url(localhost:7000/keycloak/auth)与来自keycloak服务器(localhost:8100/auth)的url不匹配。

我还尝试了以下操作:
https://www.keycloak.org/docs/1.9/server_installation_guide/topics/clustering/load-balancer.html,但是,我无法从Jetty生成X-Forward头。

我在这里做错了什么基本的事情吗?这里的任何指针都将非常有帮助。谢了。

共有1个答案

单于季
2023-03-14

我通过Jetty反向代理将http://localhost:7000/auth(不是localhost:7000/keycloak/auth)映射到http://localhost:8100/auth来解决这个问题。它工作得很好。
p.s.我还需要在keycloak standalone.xml中添加proxy-address-forwarding=“true”

 类似资料:
  • 我在服务器上安装了keycloak standanlone,并尝试通过Nginx在反向代理后面使用它。Keycloak绑定到127.0.0.1

  • 我在谷歌上冲浪,没有找到任何具体的答案或例子,所以再次尝试我的运气在这里(经常是幸运的)。 问题所在 > 我在apache反向代理后面运行了一个spring boot RESTful服务。此RESTful服务只运行HTTP。假设它运行在本地IP172.S端口8080上。 我还配置了一个apache反向代理。假设它运行在本地IP172.a和公共IP55.a上。该代理响应两个端口80,但所有HTTP通

  • 我想在代理之后提供Restful API,但我不知道如何将请求重定向到Spring Boot应用程序,以便可以使用域名访问它。 我的Spring Boot应用程序使用spring-boot-starter-tomcat运行,应用程序部署良好,我可以在服务器上使用java-jar myApplication.jar部署它。 该应用程序还可以通过写入远程访问https://1.2.3.4:8090在浏

  • 我是新来的Spring Security,并试图开发Spring Boot应用程序与谷歌登录使用OAuth2下运行的主机名: 8080。这个程序是背后的Apache反向代理服务器https://url.com. Spring启动版本2.1。0 Spring Security版本5.1.1 build.gradle: 应用yml: Spring Security配置: 我请求https://url.

  • null 这起作用了,当调用https://www.website.com/auth/oauth/authorizeendpoint时,我将在https://www.website.com/auth/login上重定向,并看到我的登录表单。 问题是没有加载jquery或css这样的资源,因为它试图通过URL https://www.website.com/resources/jquery.min.

  • 我有一个apache服务器在运行,在这个服务器上我也有一个mongo数据库在运行,监听标准端口27017。 我试过这个,但似乎一点也不起作用: