LDAP
配置舉例
# 启用LDAP身份验证,默认false
Enable = true
# LDAP服务器的主机名或IP地址,客户端将连接到此服务器进行身份验证
Host = '10.99.0.170'
# LDAP服务器的端口号,默认端口是389
Port = 389
# LDAP目录树中的起始点,所有搜索操作都将在此基础DN下进行
BaseDn = 'dc=n9e,dc=com'
# 用于绑定到LDAP服务器的用户DN
BindUser = 'cn=binduser,dc=n9e,dc=com'
# 用于绑定到LDAP服务器的用户的密码
BindPass = '1234'
# 查找用户的LDAP搜索过滤器,%s将被替换为实际的用户名
AuthFilter = "(&(sAMAccountName=%s))"
# 是否覆盖用户属性,设置为true表示当从LDAP同步用户信息时,将覆盖现有的用户属性
CoverAttributes = true
# 是否覆盖团队设置
CoverTeams = false
# 是否启用TLS连接
TLS = false
# 是否启用StartTLS
StartTLS = false
# 用户在系统中的默认角色
DefaultRoles = ['Guest']
# 用户在系统中的默认团队
DefaultTeams = [21]
# 用户属性映射
[Attributes]
# 映射到LDAP中的displayName
Nickname = 'displayName'
# 映射到LDAP中的mobile
Phone = 'mobile'
# Email映射到LDAP中的mail
Email = 'mail'
基础配置详解
Enable = true
为LDAP配置的开关;
Host = '10.99.0.170'
后面需要填写LDAP服务器的主机名或IP地址;
Port = 389
对应LDAP服务的端口号,默认端口为389;
BaseDn = 'dc=n9e,dc=com'
是LDAP服务的目录树起点(如下图所示);
BindUser = 'cn=binduser,dc=n9e,dc=com'
用于绑定到LDAP服务器的用户DN。该用户需要有足够的权限来搜索用户和验证凭证;(这个用户需要在LDAP中先创建并设置权限)
BindPass = '1234'
用于绑定到LDAP服务器的用户密码;
下面是一个LDAP创建binduser和ACL的配置简单实例:
1. 创建 bind 用户文件 `binduser.ldif`
root@9a90f3b798ee:/# cat binduser.ldif
# Entry for bind user
# 注意替换 cn/dc 相关信息
dn: cn=binduser,dc=n9e,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
cn: binduser
sn: Bind
uid: binduser
userPassword: 1234
uidNumber: 10000
gidNumber: 10000
homeDirectory: /home/binduser
2. 创建 bind 用户 ACL 文件
root@9a90f3b798ee:/# cat binduser-acl.ldif
# Add ACL for bind user
dn: olcDatabase={1}mdb,cn=config
changetype: modify
add: olcAccess
# 注意替换 dc/cn 等相关信息
olcAccess: to dn.subtree="dc=n9e,dc=com"
by dn.exact="cn=binduser,dc=n9e,dc=com" read
by * none
3. 创建 bind 用户,注意修改 dc/cn 信息,-w 参数后面填写 admin 的密码
ldapadd -x -D "cn=admin,dc=n9e,dc=com" -w 1234 -f binduser.ldif
4. 添加 bind 用户 ACL,注意修改 dc/cn 信息,-w 参数后面填写 admin 的密码
ldapmodify -x -D "cn=admin,dc=n9e,dc=com" -w 1234 -f binduser-acl.ldif
TLS = false
选项为 true | false,根据LDAP设置情况开启。
StartTLS = false
选项为 true | false,根据LDAP设置情况开启。
DefaultRoles = ['Guest']
设置LDAP账号登录夜莺后的账号权限,选项为 Admin / Standard / Guest;
DefaultTeams = [21]
设置LDAP账号登录夜莺后的账号归属业务组ID(如下图所示);
其他配置没有特殊需求可以保持默认即可,配置信息修改好后保存文件,就可以测试使用LDAP账号进行登录了。