LDAP 查询以根据属性获取用户

buk*_*api 1 ldap ldap-query

DC=abc,DC=COM
  OU=ABC
     OU=Users
        CN=User1
        CN=User2
        CN=User3
     OU=Computers
  OU=ABC1
     OU=Users
        CN=User4
        CN=User5
        CN=User6
     OU=Computers
  OU=ABC2
     OU=Users
        CN=User7
        CN=User8
        CN=User9
     OU=Computers
Run Code Online (Sandbox Code Playgroud)

有一个名为employeeID的用户属性employeeID记录中可以存在两种类型的值,一种是纯整数,另一种是以NE开头的字符

我想提取所有员工 ID 是数字的用户。

什么应该是 LDAP 查询,可以用来实现相同的

Ter*_*ner 5

将基本对象设置为搜索应从中返回条目的 DN,根据基本对象与所需条目的关系将范围设置为 SUB 或 ONE,使用类似过滤器'(!(employeeID=NE*))'和属性列表从每个条目返回. 提供大小限制和时间限制也是一种很好的做法。

使用示例ldapsearch

ldapsearch -h hostname -p port -b dc=abc,dc=com -s sub '(!(employeeID=NE*))' employeeID
Run Code Online (Sandbox Code Playgroud)

它从下面的每个条目中返回员工 ID,dc=abc,dc=com其中员工 ID 与过滤器不匹配。还返回根本没有员工 ID 的条目,因此过滤器可能需要更加严格,例如,'(&(employeeID=*)(!(employeeID=NE*)))'

也可以看看