我想用 python 创建一个 ldap 测试服务器,并用 ldif 文件导入所有数据。
import ldap
import slapdtest
with slapdtest.SlapdObject() as server:
server.start()
with open('ldap_dump.ldif') as fd:
server.ldapadd(fd.read(), ['-D', 'cn=User,dc=institute.edu'])
root_dn = server.root_dn
root_pw = server.root_pw
connect = ldap.initialize(f"ldap://{server.hostname}")
connect.set_option(ldap.OPT_REFERRALS, 0)
connect.simple_bind_s(root_dn, root_pw)
result = connect.search_s(...)
但我有一个问题,我收到 ldap 服务器已关闭的错误消息(ldap.SERVER_DOWN: {'result': -1, 'desc': "Can't contact LDAP server", 'errno': 107, 'ctrls': [], 'info': 'Transport endpoint is not connected'}
)。