ldap - 如何使用 Grafana 和 Wamp 的 LDAP 身份验证进行单点登录?
问题描述
我正在尝试使用 LDAP 为 grafana 添加单点登录,我遇到了 LDAP 的 Grafana 文档,但我不明白。
我可以使用 LDAP 获得单点登录功能吗?
如果是,有人可以给我一步一步的过程来使用 ldap 和 grafana 设置单点登录。
Grafana 版本:5.2.1 操作系统:WINDOWS
更新 1
我已经能够使用 grafana 配置 LDAP。现在我正在尝试将 LDAP 与 wamp 集成以实现 SSO。在 apache 错误日志文件中,我收到此错误
auth_ldap authenticate: user username authentication failed; URI /grafana/ [LDAP: ldap_simple_bind() failed][Invalid DN Syntax]
。
我的 apache 配置文件。
<VirtualHost *:80>
ServerName localhost
RewriteEngine on
ErrorLog "logs/authproxy-error_log"
CustomLog "logs/authproxy-access_log" common
<Location "/grafana/">
LDAPReferrals off
AuthType Basic
AuthName GrafanaAuthProxy
AuthBasicProvider ldap
AuthLDAPURL "ldap://localhost:389/dc=maxcrc,dc=com?cn,ou?sub"
AuthLDAPBindDN "cn=Manager,dc=maxcrc,dc=com"
AuthLDAPBindPassword "password"
AuthLDAPGroupAttributeIsDN off
Require ldap-filter ldapsettingshere
AuthLDAPMaxSubGroupDepth 1
RequestHeader unset Authorization
Require valid-user
</Location>
<Proxy *>
RewriteEngine On
RewriteRule .* - [E=PROXY_USER:%{LA-U:REMOTE_USER},NS]
RequestHeader set X-WEBAUTH-USER "%{PROXY_USER}e"
</Proxy>
RequestHeader unset Authorization
ProxyRequests Off
ProxyPass /grafana/ http://localhost:3000/
ProxyPassReverse /grafana/ http://localhost:3000
</VirtualHost>
更新 2
能够通过更改 bindURL 和 bindDN 来解决问题。
解决方案
我已经能够按照这些步骤进行 SSO。
- 按照grafana 文档中的步骤使用 Grafana 配置 LDAP
- 通过使用Apache 的 auth 与 Grafana 的 AuthProxy 文档一起禁用grafana 登录页面
- 通过如上所述修改 httpd.conf 文件将 LDAP 与 Apache 集成以进行反向代理身份验证
- 通过将用户名和密码传递到脚本中的 url 来弹出禁用的反向代理身份验证。
通过这些步骤,我已经能够获得 SSO 功能。
推荐阅读
- excel - Excel - 根据多列(包括日期)获取唯一计数
- asp.net-core-mvc - MVC Core 3 FromSqlRaw 参数未按预期工作
- android - 从 Tab 中存在的 FlatList Items 导航到另一个 Stack Screen
- multithreading - TensorRT 多线程
- reactjs - 将 React useMemo() 与 TypeScript 一起使用时,不能分配给类型 '() => void' 错误?
- django - DJANGO + JWT 令牌认证
- c# - 如何在 Windows 窗体中用 C# 中的公共 Id 加入不同数据库的两个 MS 访问表
- java - 是否允许在 Xtext 验证器中访问另一个资源?
- mongodb - MongoDB $push 聚合不会保持正确的顺序
- python - 结合来自两个数据帧的热编码