我们从Python开源项目中,提取了以下4个代码示例,用于说明如何使用ldap.open()。
def open(host,port=389,trace_level=0,trace_file=sys.stdout,trace_stack_limit=None,bytes_mode=None): """ Return LDAPObject instance by opening LDAP connection to specified LDAP host Parameters: host LDAP host and port, e.g. localhost port integer specifying the port number to use, e.g. 389 trace_level If non-zero a trace output of LDAP calls is generated. trace_file File object where to write the trace output to. Default is to use stdout. bytes_mode Whether to enable "bytes_mode" for backwards compatibility under Py2. """ import warnings warnings.warn('ldap.open() is deprecated! Use ldap.initialize() instead.', DeprecationWarning,2) return initialize('ldap://%s:%d' % (host,port),trace_level,trace_file,trace_stack_limit,bytes_mode)
def __init__(self,ldap_host=None,base_dn=None,user=None,password=None): if not ldap_host: ldap_host = LDAP_HOST if not base_dn: self.base_dn = BASE_DN if not user: user = USER if not password: password = PASSWORD try: self.ldapconn = ldap.open(ldap_host) self.ldapconn.simple_bind(user,password) except ldap.LDAPError,e: print e #?????????????????dn,??dn?????????????? #?ldap???cn=username,ou=users,dc=gccmx,dc=cn,??????????????DN
def whoami_s(self,*args,**kwargs): return self._apply_method_s(SimpleLDAPObject.whoami_s,*args,**kwargs) # The class called LDAPObject will be used as default for # ldap.open() and ldap.initialize()
def open_ldap(): """ Returns a freshly made LDAP object, according to the settings configured in webfront.conf. """ # Get config settings server = _config.get('ldap', 'server') port = _config.getint('ldap', 'port') encryption = _config.get('ldap', 'encryption').lower() timeout = _config.getfloat('ldap', 'timeout') # Revert to no encryption if none of the valid settings are found if encryption not in ('ssl', 'tls', 'none'): _logger.warning('Unknown encryption setting %r in config file, ' 'using no encryption instead', _config.get('ldap', 'encryption')) encryption = 'none' # Debug tracing from python-ldap/openldap to stderr if _config.getboolean('ldap', 'debug'): ldap.set_option(ldap.OPT_DEBUG_LEVEL, 255) # Use STARTTLS if enabled, then fail miserably if the server # does not support it if encryption == 'tls': _logger.debug("Using STARTTLS for ldap connection") lconn = ldap.open(server, port) lconn.timeout = timeout try: lconn.start_tls_s() except ldap.PROTOCOL_ERROR: _logger.error('LDAP server %s does not support the STARTTLS ' 'extension. Aborting.', server) raise NoStartTlsError(server) except (ldap.SERVER_DOWN, ldap.CONNECT_ERROR): _logger.exception("LDAP server is down") raise NoAnswerError(server) else: scheme = encryption == 'ssl' and 'ldaps' or 'ldap' uri = '%s://%s:%s' % (scheme, server, port) lconn = ldap.initialize(uri) lconn.timeout = timeout return lconn