用于kibana的Nginx反向代理验证参数

问题描述

由于我是新手,因此我将Nginx 1.19用作kibana 7.8.0的反向代理,因此我需要您的帮助才能解决我正在经历的情况。

我已在kibana上应用了api密钥身份验证,并且该身份验证正在https://localhost:5601上运行 除此之外,我还配置了Nginx,它可以添加标题信息并在iframe中为我的应用程序加载kibana仪表板。

Nginx网址:https://localhost:4443/

仪表板网址(基巴纳语): https://localhost:5601/kibana/app/kibana#/dashboard/722b74f0-b882-11e8-a6d9-e546fe2bba5f?_g=(filters:!(),refreshInterval:(pause:!f,value:900000),time:(from:Now-7d,to:Now))&_a=(description:'Analyze%20mock%20eCommerce%20orders%20and%20revenue',filters:!(),fullScreenMode:!f,options:(hidePanelTitles:!f,useMargins:!t),query:(language:kuery,query:''),timeRestore:!t,title:'%5BeCommerce%5D%20Revenue%20Dashboard',viewmode:view)

仪表板网址(Nginx反向代理): https://localhost:4443/kibana/app/kibana#/dashboard/722b74f0-b882-11e8-a6d9-e546fe2bba5f?_g=(filters:!(),viewmode:view)

如果要传入Nginx的参数,我该如何验证这些参数,例如(embed = true _g = someVALUE,_a = SOMEOTHERVALUE),则应允许该参数,否则应发送401页。下面提到的是我的 Nginx.conf

location ~* ^/Nginx(.*) {
        error_page 420 = @validrequest;
        if ( $arg_embed != "true" ) { return 401; }
        return 420;
    }

    location @validrequest {
        proxy_set_header  Host $host;
        proxy_redirect off;
        proxy_set_header  X-Real-IP $remote_addr;
        proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header  Authorization "ApiKey API_KEY_VALUE";
        proxy_pass  https://localhost:5601; # actual kibana URL
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)