如何使用python ldap列出根DN?

时间:2014-04-22 15:30:47

标签: python ldap

我正在使用连接到LDAP的python3-ldap就好了。但是,我不确定,也无法找到列出所有根DN的文档。

服务器或连接上是否有命令或允许我列出DN的任何地方?

1 个答案:

答案 0 :(得分:0)

您必须使用基数的空值执行搜索,然后在过滤器中指定要返回的对象类(如果需要,则指定*)。您应该使用单级作用域来仅获取ldap树中的第一级对象。

例如:

from ldap3 import Server, Connection, SEARCH_SCOPE_SINGLE_LEVEL

    s = Server('your_server')
    c = connection(s, user='your_user_dn', password='your_password', auto_bind=True)
    c.search('', '(objectClass=*)', search_scope=SEARCH_SCOPE_SINGLE_LEVEL)
    print(c.response)

you should get all the objects in the first level of the tree, if you want you can specify a filter with the object classes you need:

    c.search('', '(!(objectClass=organization)(objectClass=organizationalUnit))', search_scope=SEARCH_SCOPE_SINGLE_LEVEL)