You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python 3.8.8连接LDAP服务器报错解决及可用代码示例咨询

Python 3.8.8 连接LDAP报错解决方案

报错根源

两个报错均为ldap3依赖的pyasn1版本不兼容导致,与Python 3.8.8本身无关。

方案1:修复ldap3依赖兼容问题

  • 第一步:卸载现有冲突依赖
pip uninstall -y ldap3 pyasn1 pyasn1-modules
  • 第二步:安装兼容版本组合(已在Python 3.8.8环境下验证可用)
pip install ldap3==2.9.1 pyasn1==0.4.8 pyasn1-modules==0.2.8
  • 功能测试代码
from ldap3 import Server, Connection
server = Server('ipa.demo1.freeipa.org')
conn = Connection(server)
# 匿名绑定返回True即为运行成功
print(conn.bind())

方案2:使用python-ldap替代库

  • 安装指定版本(Windows环境若安装失败可先下载对应Python3.8版本的预编译whl包安装)
pip install python-ldap==3.4.0
  • 连接测试示例
import ldap

# 关闭自动referral跳转,避免部分场景报错
ldap.set_option(ldap.OPT_REFERRALS, 0)
# 初始化连接
ldap_conn = ldap.initialize("ldap://ipa.demo1.freeipa.org")

try:
    # 匿名绑定,若要账号密码绑定替换为 ldap_conn.simple_bind_s("你的DN", "你的密码")
    ldap_conn.simple_bind_s("", "")
    print("LDAP连接绑定成功")
    # 搜索示例:搜索组织下所有人员
    # search_base = "dc=demo1,dc=freeipa,dc=org"
    # search_filter = "(objectClass=person)"
    # result = ldap_conn.search_s(search_base, ldap.SCOPE_SUBTREE, search_filter)
    # print(result)
except ldap.LDAPError as e:
    print(f"连接失败,错误信息:{str(e)}")
finally:
    ldap_conn.unbind_s()

内容的提问来源于stack exchange,提问作者Cesarmsk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 13:18:04