Added a routine to be used by other programs to ask for the AdminUser
authorjoey <>
Sun, 21 Nov 2004 10:22:08 +0000 (10:22 +0000)
committerjoey <>
Sun, 21 Nov 2004 10:22:08 +0000 (10:22 +0000)
password and check if access if granted to the LDAP server.

userdir_ldap.py

index bdc4fcb..f60b715 100644 (file)
@@ -111,6 +111,29 @@ def getpass(prompt = "Password: "):
    print;
    return passwd;
 
+def passwdAccessLDAP(LDAPServer, BaseDn, AdminUser):
+   """
+   Ask for the AdminUser's password and connect to the LDAP server.
+   Returns the connection handle.
+   """
+   print "Accessing LDAP directory as '" + AdminUser + "'";
+   while (1):
+      Password = getpass(AdminUser + "'s password: ");
+
+      if len(Password) == 0:
+         sys.exit(0)
+
+      l = ldap.open(LDAPServer);
+      UserDn = "uid=" + AdminUser + "," + BaseDn;
+
+      # Connect to the ldap server
+      try:
+         l.simple_bind_s(UserDn,Password);
+      except ldap.INVALID_CREDENTIALS:
+         continue
+      break
+   return l
+
 # Split up a name into multiple components. This tries to best guess how
 # to split up a name
 def NameSplit(Name):