用例: 由于具体限制,我需要配置如下配置:
- Tomcat 配置为使用端口 8080
- IIS 配置为使用端口 443 (SSL)
- IIS 通过 ARR + URL 重定向规则重定向到 Tomcat
- Keycloak 独立配置为使用端口 8443 (SSL)
- 通过公共域而不是 IP 地址访问应用程序(即:www.myserver.com)
将使用 IIS 代理访问 Tomcat 应用程序: https://server/myapp
Keycloak 身份验证将直接使用 keycloak URL 访问: https://server:8443/auth/ ....
问题: 当我使用 8443 安全端口直接访问 keycloak 时效果很好,但是当我通过 IIS 代理 (443) 访问 Java 应用程序时,IIS/Tomcat 将 keycloak 身份验证重定向到端口 443 而不是端口 8443。
问题: 我是否缺少 IIS、Tomcat 或 Keycloak 上的任何设置以使 tomcat 重定向到正确的 keycloak 8443 端口进行身份验证?
即:当向浏览器添加https://server/myapp URL 时,tomcat 应用程序正在重定向(用于身份验证)到https://server/auth/而不是https://server:8443/auth/
IIS ARR 配置屏幕截图: IIS ARR 设置
IIS 重定向规则配置截图 IIS 重定向规则
部署用例截图 部署用例图