首页 文章

如何使用Nginx和Okta进行grafana身份验证

提问于
浏览
0

如何配置Grafana身份验证以通过Okta?

我已经查看了几个不同的资源,所以目前我所拥有的是一个Nginx服务器代理对我的Grafana服务器的请求 . 但是,当我尝试向Okta添加反向代理时,我得到了500响应 . 我一直在尝试设置Grafana的auth.proxy以及Nginx的http_auth_proxy_request_module .

以下是我对grafana的配置:

[server] root_url =%(protocol)s:// $(domain)s:/ grafana [auth.proxy] enabled = true header_name = X-Webauth-User header_property = username auto_sign_up = true

这是我对nginx的配置:

server {location / grafana {auth_request / auth; auth_request_set $ user $ upstream_http_x_user; proxy_set_header x-user $ user; proxy_pass http:// localhost:3000;重写^ / grafana( . *)/ $ 1休息; } location / auth {proxy_pass https://myorg.okta.com/home/app/key; proxy_pass_request_body off; proxy_set_header Content-Length“”; proxy_set_header X-Original_URI $ request_uri; }

我是所有这一切的新手,所以任何提示或帮助和一些解释将不胜感激 . 干杯!

1 回答

  • 2

    将Grafana与Okta集成的最简单方法是使用Generic OAuth2.0登录模块 . 您需要在Okta中将Grafana设置为OpenID客户端"web application" . 将基本URI设置为 https://<grafana domain>/ 并将登录重定向URI设置为 https://<grafana domain>/login/generic_oauth .

    然后在Grafana中设置通用oauth模块,如:

    [auth.generic_oauth]
    name = Okta
    enabled = true
    scopes = openid profile email
    client_id = <okta application Client ID>
    client_secret = <okta application Client Secret>
    auth_url = https://<okta domain>/oauth2/v1/authorize
    token_url = https://<okta domain>/oauth2/v1/token
    api_url = https://<okta domain>/oauth2/v1/userinfo
    

相关问题