您的位置:首页 > 编程语言 > Python开发

python-ldap 实例

2013-10-15 09:34 218 查看
ldapsearch -h 172.16.6.77 -p 389 -b "cn=Users,dc=demo,dc=com" -D 'test@demo.com' -W

-h 主机地址

-p 端口号(默认389)

-x 简单授权(不使用SASL)

-b BaseDN 指定从这个DN开始搜索

-D BindDN 这里就是邦定的用户帐号,用谁的身份来执行这次搜索

-w 显式输入密码

-W 隐式输入密码

#coding=utf-8

import sys, ldap
import ldap.dn
      
LDAP_HOST = '172.16.6.77'

#for which user to login
MGR_CRED = 'cn=Administrator,cn=Users,dc=demo,dc=com'
MGR_PASSWD = '******'

      
class LDAPMgmt:
    def __init__(self, ldap_host=None, ldap_base_dn=None, mgr_cred=None,mgr_passwd=None):
        if not ldap_host:
            ldap_host = LDAP_HOST
        if not mgr_cred:
            mgr_cred = MGR_CRED
        if not mgr_passwd:
            mgr_passwd = MGR_PASSWD
        self.ldapconn = ldap.open(ldap_host)
        self.ldapconn.simple_bind(mgr_cred, mgr_passwd)
              
    def list(self, base_dn,filterstr='(objectClass=*)',attrib=None,scope=ldap.SCOPE_SUBTREE):
        s = self.ldapconn.search_s(base_dn, scope,filterstr,attrlist=attrib)       

        for item in s:
            attrib_dict0 = item[0]
            attrib_dict1 = item[1]
            print "dn is : %s "%(attrib_dict0)
            print "attrib is : %s"%attrib_dict1

l = LDAPMgmt()

LDAP_BASE_DN = 'ou=云计算系统事业部,dc=demo,dc=com'

l.list(LDAP_BASE_DN)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: