Seite 1 von 1

LDAP3 user Daten von AD ziehen

Verfasst: Montag 11. März 2019, 10:22
von VolkerH
Hallo zusammen,

seit einigen Stunden versuche ich vergeblich eine LDAP Anfrage gegen einen LDAP Server in unserem Unternehmen abzusetzen, leider läuft es schon ziemlich vorne auf einen Fehler. Habe schon versucht über Google und Co entsprechende Hilfen zu bekommen, aber ich konnte die Infos nicht auf meinen Fall umsetzen. LDAP ist für mich Neuland und in Python bin ich nicht sattelfest.

Mein Test:
from ldap3 import Server, Connection, SIMPLE, SYNC, ALL, SUBTREE

HOST = 'ldap-server'
user_dn = 'login-name'
PASSWORD = 'pw'

s = Server(HOST, port=636, get_info=ALL)
c = Connection(s, authentication=SIMPLE, user=user_dn, password=PASSWORD, check_names=True, lazy=False, client_strategy=SYNC, raise_exceptions=False)
c.open()
c.bind()

Die Fehlermeldung: ldap3.core.exceptions.LDAPSocketReceiveError: error receiving data: [WinError 10054] An existing connection was forcibly closed by the remote host

Meine Pythonversion: Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
LDAP Server ist Windows Domain AD.

Was mache ich hier falsch? Gibt es ein einfaches Beispiel für solch eine Abfrage?

Danke und viele Grüße,
Volker

Re: LDAP3 user Daten von AD ziehen

Verfasst: Montag 11. März 2019, 12:47
von __blackjack__
@VolkerH: Was sagt das Log auf LDAP-Seite dazu warum der Server die Verbindung geschlossen hat?

Re: LDAP3 user Daten von AD ziehen

Verfasst: Dienstag 12. März 2019, 14:15
von VolkerH
Hallo _blackjack_,
ich habe leider kein Zugriff auf den LDAP-Server, somit auch nicht auf das Log-File.
Gibt es vielleicht ein funktionierendes kleines Beispiel, dass ich auf meine Frage umsetzen kann? Im Netz und hier habe ich schon wie wild gesucht, aber ich kann ja auch nicht viel ausprobieren, da mein Script auf ein Fehler läuft. Im Debugger konnte ich sehen, dass mit dem LDAP-Server "gesprochen" wurde, aber das Bind funzt nicht.
Viele Grüße,
Volker

Re: LDAP3 user Daten von AD ziehen

Verfasst: Donnerstag 14. März 2019, 10:34
von sls
@VolkerH: `username` und `password` sind valide? Konntest du das bereits anderweitig testen? Eine Idee wäre, mit einem LDAP-Browser (z.B. von Softerra) zu prüfen, ob die übergebenen Parameter vom AD so akzeptiert werden, um ein Python-Problem auszuschließen. Ansonsten hilft nur das Log vom LDAP-Server weiter, wie __blackjack__ bereits schrieb.