---
# System prepended metadata

title: '樹莓派筆記- Grafana儀表板:綁定LLDAP'
tags: [docker, Linux, 樹莓派]

---

---
title: 
description: 
date: 2023-04-24
lang: zh-tw
tags:
  - 樹莓派
  - Linux
  - docker
---
# 樹莓派筆記- Grafana儀表板:綁定LLDAP

## grafana.ini
```ini=
#################################### Auth LDAP ###########################
[auth.ldap]
enabled = true
config_file = /etc/grafana/ldap.toml
allow_sign_up = true
skip_org_role_sync = false

# LDAP background sync (Enterprise only)
# At 1 am every day
sync_cron = "0 1 * * *"
active_sync_enabled = true

```
## grafana_ldap_config.toml
```toml=
# This is only the ldap config, you also need to enable ldap support in the main config file
# of Grafana. See https://grafana.com/docs/grafana/latest/auth/ldap/#enable-ldap
# You can test that it is working correctly by trying usernames at: https://<your grafana instance>/admin/ldap

[[servers]]
# Ldap server host (specify multiple hosts space separated)
host = "lldap"
# Default port is 389 or 636 if use_ssl = true
port = 3890
# Set to true if LDAP server should use an encrypted TLS connection (either with STARTTLS or LDAPS)
use_ssl = false
# If set to true, use LDAP with STARTTLS instead of LDAPS
start_tls = false
# set to true if you want to skip SSL cert validation
ssl_skip_verify = false
# set to the path to your root CA certificate or leave unset to use system defaults
# root_ca_cert = "/path/to/certificate.crt"
# Authentication against LDAP servers requiring client certificates
# client_cert = "/path/to/client.crt"
# client_key = "/path/to/client.key"

# Search user bind dn
bind_dn = "uid=admin,ou=people,dc=example,dc=org"
# Search user bind password
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
bind_password = "LLDAP_ADMIN_PASSWORD"

# User search filter
search_filter = "(uid=%s)"
# If you want to limit to only users of a specific group use this instead:
# search_filter = "(&(uid=%s)(memberOf=cn=<your group>,ou=groups,dc=example,dc=org))"

# An array of base dns to search through
search_base_dns = ["dc=example,dc=org"]

# Specify names of the LDAP attributes your LDAP uses
[servers.attributes]
member_of = "memberOf"
email = "mail"
name = "givenName"
surname = "sn"
username = "uid"

# If you want to map your ldap groups to grafana's groups, see: https://grafana.com/docs/grafana/latest/auth/ldap/#group-mappings
# As a quick example, here is how you would map lldap's admin group to grafana's admin
## 因為有自創管理者群組，因此以這個為準
[[servers.group_mappings]]
group_dn = cn=admins,ou=groups,dc=example,dc=org"
org_role = "Admin"
grafana_admin = true
```



## Ref
* https://grafana.com/docs/grafana/latest/setup-grafana/configure-security/configure-authentication/ldap/
* https://github.com/lldap/lldap/blob/main/example_configs/grafana_ldap_config.toml

