C3. 使用LDAP/AD身份验证

配置文件

在配置文件auth-ldap-rfc4515.conf进行设置。

还提供包含标准设置的配置文件:

auth-ldap-rfc4515-check-group.conf——通过LDAP进行管理员外部身份验证的配置文件,采用简易方式,检查是否属于Active Directory组。

auth-ldap-rfc4515-check-group-novar.conf——通过LDAP进行管理员外部身份验证的配置文件,采用简易方式,检查是否属于Active Directory组,并使用变量。

auth-ldap-rfc4515-simple-login.conf——通过LDAP进行管理员外部身份验证的配置文件,采用简易方式。

配置文件auth-ldap-rfc4515.conf主要标签:

<server />——确定LDAP服务器。

属性

描述

默认值

base-dn

DN对象,相对于此对象进行搜索。

对象Root DSErootDomainNamingContext参数的参数值

cacertfile

根证书文件(仅限UNIX)。

host

LDAP服务器地址。

用于OS Windows服务器的域控制器。

127.0.0.1用于UNIX家族操作系统服务器。

scope

搜索区域。有效值可为:

sub-tree——所有低于基础DN的区域,

one-level——基础DN的直接子域,

base——基础DN。

sub-tree

tls

安装TLS来连接LDAP服务器。

no

ssl

使用LDAPS协议连接LDAP服务器。

no

<set />——指定在LDAP搜索的变量。

属性

描述

默认值

attribute

其参数值被确定为变量的参数名称。不可空缺。

filter

在LDAP的RFC4515搜索过滤器。

scope

搜索区域。有效值可为:

sub-tree——所有低于基础DN的区域,

one-level——基础DN的直接子域,

base——基础DN。

sub-tree

search

DN对象,相对于此对象进行搜索。

空缺时使用标签 <server />base-dn

variable

变量名称。应以字母开始并指包含字母和数字。不可空缺。

变量可用于标签 <mask /><expr />的参数add,标签<filter />的参数value,格式为\varname,还可用于标签<set />的参数search。打开变量时的最大递归等级为16。

如搜索返回多个找到的对象,则只使用第一个。

<mask />——用户名模板。

属性

描述

add

添加到按操作且包含可替代元素进行搜索的过滤器的行。

user

使用DOS形元字符*和#的用户名通配符。不可空缺。

例如:

<mask user="*@#"  add="sAMAccountName=\1" />

<mask user="*\*"  add="sAMAccountName=\2" />

\1\2——user属性中相符通配符链接。

<expr />——使用正则表达式的用户名模板(属性同<mask />)。

例如:

<expr user="^(.*)@([^.,=@\s\\]+)$"  add="sAMAccountName=\1" />

<expr user="^(.*)\\(.*)"            add="sAMAccountName=\2" />

通配符与正则表达式的对应关系:

通配符

正则表达式

*

.*

#

[^.,=@\s\\]+

<filter />——在LDAP的搜索过滤器。

属性

描述

value

添加到按操作且包含可替代元素进行搜索的过滤器的行。

隔离区串联

<set variable="admingrp" filter="&amp;(objectclass=group)(cn=ESuite Admin)" attribute="dn" />
<mask user="*\*" add="sAMAccountName=\2" />
<filter value="&amp;(objectClass=user)(memberOf=\admingrp)" />

admingrp在搜索结果中的值变为"CN=ESuite Admins,OU=some name,DC=example,DC=com",而用户输入的是domain\user,最终获得的过滤器为:

"(&(sAMAccountName=user)(&(objectClass=user)(memberOf=CN=ESuite Admins,OU=some name,DC=example,DC=com)))"

LDAP/AD身份验证设置示例

下例为使用LDAP进行身份验证的标准设置。设置在管理中心管理 → 身份验证 → LDAP/AD身份验证部分指定(如为简明设置)。

需进行身份验证的管理员的初始参数:

域名:dc.test.local

在Active Directory的组:DrWeb_Admins

管理中心设置:

设置名称

服务器类型

Microsoft Active Directory

服务器地址

dc.test.local

用于确认登录的用户名模板

账户通配符

test\*或*@test.local

用户名

\1

用于确认登录的用户组籍

名称

DrWeb_Admins

类型