如何在python-ldap中基于其dn在LDAP中搜索对象?

joe*_*ker 4 ldap python-ldap

我试图使用例如search_s函数来搜索基于其完整的可分辨名称的对象,但我发现这不方便.例如,

search_s('DC=example, DC=com', ldap.SCOPE_SUBTREE,
    '(CN=Somebody, OU=Department, DC=example, DC=com)')
Run Code Online (Sandbox Code Playgroud)

如何根据其完整的LDAP专有名称检索一个对象?

joe*_*ker 7

使用SCOPE_BASE和通配符过滤器仅返回第一个参数给出的dn(过滤器仍然必须匹配该对象!)例如,

import ldap
...
ldap_connection.search_s('CN=Somebody, OU=Department, DC=example, DC=com',
    ldap.SCOPE_BASE,
    '(objectClass=*)')
Run Code Online (Sandbox Code Playgroud)