一、安装python-ldap找不到lber.h的解决方法

sudo apt-get install libldap2-dev libsasl2-dev

二、示例

# coding=utf8
import ldap
searchname='zzz'
username='xxx'
password='xxx'
uid = '%s@yyy.com' % (username)

l = ldap.initialize('ldap://host:389')
#ldap.open('ldap://host')
try:
    l.protocol_version = 3
    l.set_option(ldap.OPT_REFERRALS,0)
    l.simple_bind_s(uid, password)
    print l.whoami_s()

    searchFilter = "sAMAccountName=" + searchname
    retrieveAttributes = None
    searchScope = ldap.SCOPE_SUBTREE

    ldap_result_id = l.search(base, searchScope, searchFilter, retrieveAttributes)
    print ldap_result_id

    result_set = []
    while 1:
            result_type, result_data = l.result(ldap_result_id, 0)
            if(result_data == []):
                break
            else:
                if result_type == ldap.RES_SEARCH_ENTRY:
                    result_set.append(result_data)

    Name,Attrs = result_set[0][0]
    print Name
    for k,v in Attrs.items():
        print k , '/'.join(v) 
except ldap.INVALID_CREDENTIALS , ldap.LDAPError:
    #l.unbind()
    print 'Wrong username or password'
finally:
    l.unbind()

 

posted on 2016-01-08 12:50  perel  阅读(557)  评论(0编辑  收藏  举报