【发布时间】:2015-04-30 21:18:58
【问题描述】:
以下工作并返回所有用户的列表
ldapsearch -x -b "ou=lunchbox,dc=office,dc=lbox,dc=com" -D "OFFICE\Administrator" -h ad.office.lbox.com -p 389 -W "(&(objectcategory=person)(objectclass=user))"
我正在尝试在 Python 中做同样的事情,但我收到了 Invalid credentials
#!/usr/bin/env python
import ldap
dn = "cn=Administrator,dc=office,dc=lbox,dc=com"
pw = "**password**"
con = ldap.initialize('ldap://ad.office.lbox.com')
con.simple_bind_s( dn, pw )
base_dn = 'ou=lunchbox,dc=office,dc=lbox,dc=com'
filter = '(objectclass=person)'
attrs = ['sn']
con.search_s( base_dn, ldap.SCOPE_SUBTREE, filter, attrs )
任何使这项工作的建议都会很棒。我正在努力学习python-ldap谢谢
编辑
这是我得到的完整错误:
`ldap.INVALID_CREDENTIALS: {'info': '80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1', 'desc': 'Invalid credentials'}`
LDAP 服务器是 Windows Server 2008 R2 上的 Active Directory
【问题讨论】:
-
您收到错误消息了吗?你的 ldap 日志中有什么东西吗?
-
@DonQuestion 我已将完整错误添加到问题中。 Active Directory 日志中没有任何内容。我没想到要提到我正在连接到 Win2008 R2 上的 AD。
-
您的身份验证似乎有问题。我猜它在绑定方法中犹豫不决?!看看packtpub.com/article/…
-
是的,我希望有人能告诉我为什么
python-ldap绑定与ldapsearch绑定有什么不同。 -
您是否尝试过仅使用“cn=Administrator”或“Administrator”进行身份验证?
标签: python ldap python-ldap