我试图通过将enable-basic-auth设置为true,让tomcat8-keycloak-adapter接受文档中指定的基本身份验证。这不会像预期的那样工作或失败,而是导致线程挂起,直到 HTTP 超时。
使用 tcpdump 窥探 tomcat 适配器和 keycloak 服务器之间的 HTTP 连接表明它永远不会发送 HTTP 请求。我在互联网上找不到有关此的信息,因此我实际上要问:"enable-basic-auth"实际上在tomcat适配器中有效吗?
请注意,我使用的是 keycloak v1.9.8 和匹配的 adpater 1.9.8。 adaptever v2.0.0 目前似乎很难启动,我们仍在生产中使用 1.9 Keycloak。 KeyCloak 是官方的 docker 镜像,Tomcat 是手动安装到官方 Tomcat8 Docker 镜像中,使用 JRE8。
它在码头设置中对我有用。挂起的请求向我指示网络问题。您的问题表明您正在使用 docker。
其 docker 容器内的 Tomcat 需要按照文件keycloak.json
中的 URL auth-server-url
配置联系 Keycloak
我怀疑雄猫无法访问此 URL。请尝试从 Tomcat 的 docker 容器中访问 keycloak.json
中所述的 URL,例如通过 curl --verbose ...