Python中最好的客户端LDAP API是什么?

3 投票
2 回答
2992 浏览
提问于 2025-04-17 09:37

可能是重复的问题:
Python-LDAP 集成

下午好!

我正在为工作写一个程序,这个程序需要根据文本文件中的名字在LDAP数据库中查找ID。

我打算用Python来写,因为这是我最喜欢的编程语言。

我想问一下,Python中最好的LDAP客户端API是什么?我可以在哪里下载它呢?

这个API需要和我使用的Red Hat Enterprise Linux Server 5.7(Tikanga)兼容。

祝好,
ktm

2 个回答

2

一般来说,一个API至少需要支持以下几点(无论使用什么编程语言):

  • 匹配和排序规则,因为不能直接用本地语言的比较操作符来处理从目录服务器获取的数据。
  • 能够从目录服务器的架构中获取属性语法、匹配规则和排序规则。
  • 支持请求和响应的控制,还要支持扩展操作和扩展结果;这包括能够对数据进行编码,以便与请求和响应控制一起打包。
  • 高水平的安全支持;这必须包括对SSL和/或StartTLS的支持(这本身就是一种扩展操作)。
  • 支持所有符合LDAP标准的结构(有一个非常流行的编程语言的API不支持除了子树以外的搜索范围,这样就无法检查根DSE以获取请求控制、扩展操作支持、功能支持和支持的SASL认证机制。使用这个不完整的API可能会导致在关键任务或复杂环境中丢失重要数据)。

最好有的功能:

  • 支持异步搜索结果监听器(以及同步搜索结果监听器)。
  • 支持LDAP事务(原子更新)。
  • 支持所有定义的SASL认证机制以及简单绑定机制。
  • 本地化支持。
  • 方便调试和控制的访问。
  • 内置的故障转移和负载均衡支持。
  • 线程安全。

非常希望有的功能:

  • 原生支持连接池。
2

我使用过 http://www.python-ldap.org/ 这个网站上的东西,效果很好。

撰写回答