KeyCloak-ingress不允许通过https服务进行连接



我已经使用helm安装了密钥斗篷。创建Traefik入口以允许从公共访问

从localhost:8080创建管理密码后,只有在端口转发和本地访问时,我才能登录到管理控制台。

当我使用公共url并点击管理控制台时,它会重定向到https://website/auth/admin/master/console/并显示空白页。

我发现了这个问题,但当我在ingress中更改servicePort:https时,我得到了一个内部服务器错误状态代码500。

当我使用http端口时,我会收到以下错误:混合内容:位于"的页面https://url/auth/admin/master/console/"通过HTTPS加载,但请求了不安全的脚本"http://url/auth/js/keycloak.js?version=mxda6"。此请求已被阻止;必须通过HTTPS提供内容。

混合内容:位于"的页面https://url.ca/auth/admin/master/console/"通过HTTPS加载,但请求了不安全的脚本"http://url/auth/js/keycloak.js?version=mxda6"。此请求已被阻止;必须通过HTTPS提供内容。

我查看了traefik日志:

level=debug消息="'500内部服务器错误"由:x509引起:无法验证x.x.x.x的证书,因为它不包含任何IP SAN";

我找到了一个修复程序,但它仍然没有回答我的问题,为什么当入口指向https时,它不起作用。有答案吗?

因此,修复方法是在statefulset密钥斗篷部署中的ENV下添加此项。在入口中,服务端口为http

- name: PROXY_ADDRESS_FORWARDING
value: "true"

我在找到的https://github.com/eclipse/che/issues/9429

我遇到了同样的问题。白色屏幕没有帮助,但浏览器控制台有帮助。它阻止了混合内容,即脚本http://url/auth/js/keycloak.js?version=mxda6

Docker Hub上的文档显示:

指定前端基本URL

要为前端请求设置固定的基本URL,请使用以下环境值(强烈建议在生产中使用此值(:

  • KEYCLOAK_FRONTEND_URL:指定Keycloft的基本URL(可选,默认值从请求中检索(

我在清单中为外部url提供了https方案,有问题的脚本现在以https url的形式出现在index.html中。

- name: KEYCLOAK_FRONTEND_URL
value: "https://url/auth"

由于它是";强烈推荐";我想如果没有这个变量集,会有更多的小问题,比如其他链接生成错误,例如在电子邮件中,尽管我还没有检查。

最新更新