在Iframe中嵌入Kubernetes仪表板UI

在Iframe中嵌入Kubernetes仪表板UI,kubernetes,kubernetes-dashboard,Kubernetes,Kubernetes Dashboard,我正在尝试将Kubernetes仪表板UI嵌入iFrame中。我可以看到登录页面,但当我试图通过提供令牌登录时,它不会加载仪表板,我会停留在登录页面本身。我怀疑它与CORS和访问控制允许原点设置有关 有人能告诉我如何进行正确的配置,以便我可以访问iFrame中的Kubernetes仪表板UI吗。我能够在没有iFrame的情况下访问UI 在iFrame中,当我通过iFrame登录时,Javascript控制台中出现以下错误 “jweToken” has been rejected because

我正在尝试将Kubernetes仪表板UI嵌入iFrame中。我可以看到登录页面,但当我试图通过提供令牌登录时,它不会加载仪表板,我会停留在登录页面本身。我怀疑它与CORS和访问控制允许原点设置有关

有人能告诉我如何进行正确的配置,以便我可以访问iFrame中的Kubernetes仪表板UI吗。我能够在没有iFrame的情况下访问UI

在iFrame中,当我通过iFrame登录时,Javascript控制台中出现以下错误

“jweToken” has been rejected because it is in a cross-site context and its “SameSite” is “Lax” or “Strict”.

您可以添加入口以公开仪表板服务,并添加CORS注释以允许更多来源()。请注意,如果您正在使用仪表板的舵图,它已经包含入口,因此您可以使用
ingres.annotations
值直接添加注释

还有其他一些解决方案:

  • 修改apiserver的命令行以允许您的源代码(请参阅),但是这一行有一定的风险,因为您将更改整个API的策略
  • 添加一个非常简单的部署,它将代理仪表板(使用nodejs,您只需要几行代码就可以构建一个代理),但是这个部署需要一些您自己的代码

您是否尝试启用浏览器的开发模式?您有任何错误吗?我在iFrame Cookie中登录时发现此错误“jweToken”已被拒绝,因为它位于跨站点上下文中,其“SameSite”为“Lax”或“Strict”。