代码之家  ›  专栏  ›  技术社区  ›  Badr

当使用userPrincipleName作为筛选器时,ldapsearch不返回结果?

  •  0
  • Badr  · 技术社区  · 6 年前

    我有一个正在运行的Freeipa LDAP服务器,用于用户管理。我需要使用userprinciplename属性搜索用户。我可以使用uid过滤器进行搜索,如下所示:

    ldapsearch -H "ldap://ldap.domain.net" -D "uid=badr,cn=users,cn=accounts,dc=domain,dc=net" -w "password" -b "uid=badr,cn=users,cn=accounts,dc=domain,dc=net" "uid=badr"

    但是,当我把过滤器换成 userPrincipleName ,它什么也不返回。

    ldapsearch -H "ldap://ldap.domain.net" -D "uid=badr,cn=users,cn=accounts,dc=domain,dc=net" -w "password" -b "uid=badr,cn=users,cn=accounts,dc=domain,dc=net" "userPrincipleName=badr@domain.net"

    我怀疑为了使LDAP服务器正常工作,必须在LDAP服务器上做一些事情。

    错误在哪里?

    提前谢谢

    1 回复  |  直到 6 年前
        1
  •  1
  •   Michael Ströder    6 年前

    freeipa没有属性类型 用户主要名称 在其模式中。

    此外,属性 用户主要名称 在MS AD中定义的,拼写不同,但也不在Freeipa的模式中。

    相反,freeipa用户条目包含属性 KRBPrincipalName公司 在mit kerberos的LDAP架构中定义。

    如果客户端应用程序只能使用 用户主要名称 对于搜索,可以基于OpenLDAP设置LDAP代理 LDAP backend 具有 slapo-rwm 实现属性映射。