0

I am using pyldap to connect to AD server pyldap is providing two functions bind_s() and simple_bind_s() can any one explain me when to use bind_s() and simple_bind_s() and which one is best.

Mallik Sai
  • 186
  • 1
  • 4
  • 16

1 Answers1

1

simple_bind_s() can do simple LDAP authentication or Kerberos authentication. However, bind_s() can only do LDAP authentication to form connection with Active Directory server.

I mostly prefer simple_bind_s() because we need both authentication support for applications but if you're sure you will never need to implement/use kerberos authentication in your application then feel free to pick bind_s().

Following is the implementations of respective bind definitions (Reference):

simple_bind_s():

  def simple_bind_s(self,who='',cred='',serverctrls=None,clientctrls=None):
    """
    simple_bind_s([who='' [,cred='']]) -> 4-tuple
    """
    msgid = self.simple_bind(who,cred,serverctrls,clientctrls)
    resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all=1,timeout=self.timeout)
    return resp_type, resp_data, resp_msgid, resp_ctrls

bind_s():

  def bind_s(self,who,cred,method=ldap.AUTH_SIMPLE):
    """
    bind_s(who, cred, method) -> None
    """
    msgid = self.bind(who,cred,method)
    return self.result(msgid,all=1,timeout=self.timeout)
Mahesh Karia
  • 2,045
  • 1
  • 12
  • 23