Grafana:如何使用 JWT 身份验证?

Posted

技术标签:

【中文标题】Grafana:如何使用 JWT 身份验证?【英文标题】:Grafana : How to use JWT authentication? 【发布时间】:2021-08-19 01:08:24 【问题描述】:

我想使用 JWT 进行 Grafana 登录身份验证,Grafana docs 规定了一些相同的步骤,但sample.ini 中未提供[auth.jwt] 默认值,您能否在提到的步骤中澄清header name that contains a token 的含义为enabling JWT ?

【问题讨论】:

github.com/grafana/grafana/blob/main/conf/… 【参考方案1】:

这是从 grafana 前面的代理提供 jwt 有效负载的标头 - 在 IAP(https://cloud.google.com/iap/docs/signed-headers-howto) 的情况下,例如:x-goog-iap-jwt-assertion。此标头的内容通过使用指定的源 i jwk_set_url、jwk_set_file 或 key_file 进行验证,之后可以获取用户名和电子邮件等声明。上面的网址中也提供了有关 IAP 的示例:

   auth.jwt:
      enabled: true
      header_name: x-goog-iap-jwt-assertion
      username_claim: sub
      email_claim: email
      jwk_set_url: https://www.gstatic.com/iap/verify/public_key-jwk

但是请注意 - auth.jwt 目前“被设计破坏”,如下所述: Authentication Grafana via JWT

【讨论】:

以上是关于Grafana:如何使用 JWT 身份验证?的主要内容,如果未能解决你的问题,请参考以下文章

让 grafana 使用现有的 JWT 令牌

Node.js - JWT、API:如何实现多个 Passport.js 身份验证中间件?

如何使 AzureAD 和自定义 JWT 令牌在 Web API 中并行工作?

如何使 SignalR 承载身份验证安全或如何不记录查询字符串

如何使用 Postman 测试 jwt 身份验证

如何使我的代码生成令牌并将其返回以对用户进行身份验证?