【问题标题】:Query LDAP for all entries without given objectClass在没有给定 objectClass 的情况下查询所有条目的 LDAP
【发布时间】:2014-10-13 20:12:37
【问题描述】:

我的 LDAP 目录中有多个指定了不同对象类的条目

dn: uid=user1,ou=users,dc=exampleCompany,dc=com
uid: user1
objectClass: user
objectClass: developer
cn: User1 User

dn: uid=user2,ou=users,dc=exampleCompany,dc=com
uid: user2
objectClass: user
objectClass: administrator
cn: User2 User

dn: uid=user3,ou=users,dc=exampleCompany,dc=com
uid: user3
objectClass: user
objectClass: developer
objectClass: administrator
cn: User3 User

dn: uid=user4,ou=users,dc=exampleCompany,dc=com
uid: user4
objectClass: anotherClass
cn: User4 User

我想查询所有没有 objectClass: developer 的人,不管他们有什么其他的对象类。 我试过了

ldapsearch -x -b ou=users,dc=exampleCompany,dc=com "(&(objectClass=*)(!(objectClass=developer)))" 

但我得到了

dn: ou=users,dc=exampleCompany,dc=com
objectClass: organizationalUnit
ou: users

# search result
search: 2
result: 0 Success

什么是正确的查询?

【问题讨论】:

    标签: ldap openldap ldap-query


    【解决方案1】:

    正如你所拥有的,但没有 & 和 (objectClass=*) 部分。

    您还需要指定子树搜索。

    【讨论】:

    • 类似 ldapsearch -x -b ou=users,dc=exampleCompany,dc=com -s sub "(!(objectClass=developer))"
    猜你喜欢
    • 1970-01-01
    • 2013-09-28
    • 1970-01-01
    • 2021-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-27
    • 2017-01-10
    相关资源
    最近更新 更多