跳转到主要内容

纯Python Twisted库,用于LDAP

项目描述

Codecov Read the Docs GitHub Actions PyPI Black

Ldaptor是一个纯Python库,实现了

  • LDAP客户端逻辑

  • 单独访问的LDAP和BER协议消息生成/解析

  • ASCII格式LDAP过滤器生成和解析

  • LDIF格式数据生成

  • Samba密码更改逻辑

还包括一组用于命令行使用的LDAP实用工具。

详细文档可以在ReadTheDocs上找到。

快速使用示例

from twisted.internet import reactor, defer
from ldaptor.protocols.ldap import ldapclient, ldapsyntax, ldapconnector

@defer.inlineCallbacks
def example():
    # The following arguments may be also specified as unicode strings
    # but it is recommended to use byte strings for ldaptor objects
    serverip = b'192.168.128.21'
    basedn = b'dc=example,dc=com'
    binddn = b'bjensen@example.com'
    bindpw = b'secret'
    query = b'(cn=Babs*)'
    c = ldapconnector.LDAPClientCreator(reactor, ldapclient.LDAPClient)
    overrides = {basedn: (serverip, 389)}
    client = yield c.connect(basedn, overrides=overrides)
    yield client.bind(binddn, bindpw)
    o = ldapsyntax.LDAPEntry(client, basedn)
    results = yield o.search(filterText=query)
    for entry in results:
        print(entry.getLDIF())

if __name__ == '__main__':
    df = example()
    df.addErrback(lambda err: err.printTraceback())
    df.addCallback(lambda _: reactor.stop())
    reactor.run()

安装

Ldaptor可以使用标准命令行方法安装

python setup.py install

或使用PyPI上的pip安装

pip install ldaptor

Linux发行版也可能有Ldaptor和Twisted的预包装版本。Debian和Ubuntu有高质量的Ldaptor软件包,可以安装,例如:

apt-get install python-ldaptor

要从已安装项目的源检出中运行LDAP服务器(绑定端口38942)

twistd -n --pidfile=ldapserver.pid --logfile=ldapserver.log \
    -y test-ldapserver.tac

依赖关系

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源代码分发

ldaptor-21.2.0.tar.gz (301.5 kB 查看散列)

上传时间 源代码

构建分发

ldaptor-21.2.0-py2.py3-none-any.whl (179.4 kB 查看散列)

上传时间 Python 2 Python 3

由以下组织支持