Kibana 启用了严格的安全要求,您当前的浏览器不满足

Kibana has strict security requirements enabled that your current browser does not meet

我想编写自动测试来测试 kibana UI 中是否有日志,我在使用 java 向 kibana 发送 http 请求时遇到问题。在浏览器中一切正常,但是当我从 Jsoup 库发送 HTTP 请求时(curl 也会发生同样的情况),kibana 向我显示以下内容:

Please upgrade your browser This Elastic installation has strict
security requirements enabled that your current browser does not meet.

看起来 kibana 正在执行一些易受攻击的 js,如果正确执行,它会停止加载 kibana UI。

  <script>
            // Since this is an unsafe inline script, this code will not run
            // in browsers that support content security policy(CSP). This is
            // intentional as we check for the existence of __kbnCspNotEnforced__ in
            // bootstrap.
            window.__kbnCspNotEnforced__ = true;
          </script>
  <script src="/bundles/app/kibana/bootstrap.js"></script> 

您知道如何通过代码解决这个问题吗?我认为可以从 kibana.yaml 中禁用此安全功能,但我不想仅仅为了测试而禁用它。

我放弃了这样的自动测试,但我想在这里回答一个可能的解决方案(我没有测试它,但它应该有效)。

您可以使用 Headless Chrome browser。它是 运行 没有 UI 的 chrome 浏览器,可以与使用 selenium 库的 chrome 驱动程序一起使用。 更多信息:https://www.scrapingbee.com/blog/introduction-to-chrome-headless/