域与电子邮件域不同的 Active Directory 上的用户名 Ldapsearch

Usename Ldapsearch on Active Directory where AD Domain is different from email domain

我在 Debian 11 中使用 Ldap 对域 mandala.com 的 MS Active Directory 的 Postfix 用户进行身份验证。该请求使用用户的电子邮件 edmond@example.com 通过此脚本进行搜索:

<code>

    server_host = 192.168.2.3
    search_base = dc=example,dc=com
    version = 3
    bind = yes
    start_tls       = no
    bind_dn         = vmail
    bind_pw         =  mypass
    scope           = sub
    query_filter    = (&(objectclass=person)(userPrincipalName=%s))
    result_attribute= userPrincipalName
    result_format   = %d/%u/Maildir/
    debuglevel      = 1
</code>

问题是 Postfix 使用用户的电子邮件 edmond@example.com,而在 Ad 上用户是 edmond@mandala.com,因此找不到收件人。

如果我 运行 在命令行上使用 dc=mandala、dc=com 找到用户的 ldapsearch。

我通过邮件属性解决了

<code>

    query_filter = (&(objectclass=person)(mail=%s))
    result_attribute= mail

<code>