as part of django project I wanted to work out OD auth from python - and figured I'd share this quick sample code.
import sys
import os
import ldap
import getpass
DN = 'uid=%s,cn=users,dc=server,dc=example,dc=com'
def main():
    con = ldap.initialize(AUTH_LDAP_SERVER)
    con.set_option(ldap.OPT_X_TLS_DEMAND, True)
    con.set_option(ldap.OPT_PROTOCOL_VERSION,3)
    con.set_option(ldap.OPT_DEREF,3)
    user_name = raw_input('Username: ')
    pw = getpass.getpass("Password for %s: " % user_name)
    try:
        con.simple_bind_s (DN % user_name,pw)
        print "authentication success"
        print "Your dn is: \n",con.whoami_s()
    except ldap.LDAPError, e:
        sys.stderr.write("Fatal Error\n")
        if type(e.message) == dict:
            for (k, v) in e.message.iteritems():
                sys.stderr.write("%s: %s\n" % (k, v))
        else:
            sys.stderr.write("Error: %s\n" % e.message);
        sys.exit()
if __name__ == '__main__':
    main()