【问题标题】:Authorizing Grafana / Elasticsearch requests with JSON web tokens?使用 JSON Web 令牌授权 Grafana / Elasticsearch 请求?
【发布时间】:2018-08-25 19:06:44
【问题描述】:

我有一个 Grafana 仪表板正在运行,它使用 Elasticsearch 作为数据源。我的目标是使用 iframe 将仪表板中的面板嵌入到我的网络应用程序中。

Web 应用程序的授权是通过 JWT 完成的,因此当用户登录时,他们会收到来自服务器的令牌。我想为每个 Grafana 请求(在本例中为可嵌入链接)提供令牌,然后在处理请求之前检查令牌是否有效。

这样做有意义吗?如果是这样,我实现这一目标的最佳或推荐方式是什么?谢谢。

【问题讨论】:

    标签: authentication elasticsearch authorization jwt grafana


    【解决方案1】:

    如果您想避免对 Grafana 本身进行更改,您可以使用反向代理来验证 JWT(例如 https://github.com/auth0/nginx-jwt)并提供与 Grafana 的 AuthProxy 系统兼容的标头(http://docs.grafana.org/tutorials/authproxy/

    另一种方法是为 Grafana 制作 PR(可能受到 #9166 的启发),允许它在本地验证 JWT 令牌并使用它来登录用户。不过这会涉及更多。

    【讨论】:

    • 谢谢。 nginx 解决方案似乎是合理的。我目前正在使用 Apache 作为我的 Web 服务器,因此将调查是否有用于此的 mod。我想避免走更改 Grafana 代码的路线。
    • github.com/AnthonyDeroche/mod_authnz_jwt 似乎应该为您完成这项工作,自述文件描述了如何使用 Grafana AuthProxy 支持所需的授权用户名指定标头。
    猜你喜欢
    • 2020-06-24
    • 2021-08-02
    • 2018-08-17
    • 2016-05-17
    • 1970-01-01
    • 2021-03-04
    • 2015-04-24
    • 2020-07-19
    • 2018-02-06
    相关资源
    最近更新 更多