Autor Thema: Gelöst: LDAP-Login nicht möglich, "ldap critical extension not available"  (Gelesen 1642 mal)

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Wir haben ein Tool entwickelt, welches beim Kunden auf LDAP zugreifen soll. Es sollte sich dort per LDAP auf einem Lotus Notes Domino Server V12 einloggen. Das macht es bei OpenLDAP und Exchange auch ohne Probleme seit Jahren. Den Login scheint es noch zu machen. Wenn dann eine Abfrage laufen soll, kommt nur der Fehler "ldap critical extension not available" (im Original auf französisch "extension critique non disponible"). Wir hatten beim Kunden mit allerlei Tests letztlich keinen Erfolg.

Ein Printer-Tool und auch ein LDAP-Explorer-Tool können sich aber problemlos auf dem Ding einloggen. Unser Tool spricht fest nur LDAP_VERSION3 und nutzt dieses LDAP SDK (https://www.novell.com/developer/ndk/ldap_libraries_for_c.html). Gibt es irgend welche Hinweise auf was man achten muß damit das auch bei Notes klappt? Muß es ein älteres LDAP Protokoll sein?

PS. Ich wollte mal einen Domino Testserver bei uns intern aufsetzen, aber ich habe mich zweimal bei HCL registriert und dort kommen immer nur Fehlermeldungen. Ich bekomme nicht mal einen Account mit dem ich mich sauber dort einloggen kann. Aktivieren per Mail geht und gleich danach kommen Fehlermeldungen auf deren Homepage. Der Support dort wollte, dass ich viele Fehler-Formulare ausfülle um das Problem zu melden...
« Letzte Änderung: 09.08.22 - 08:21:33 von Kukulkan2 »

Offline Tode

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.883
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Prinzipiell spricht der Domino LDAP auf V3. Ich hatte noch nie ein Problem mit jedwedem Programm auf Domino mittels LDAP zuzugreifen. Kann es sein, dass Euer Suchfilter nicht stimmt, und ihr deshalb keine Ergebnisse bekommt? Was genau versucht Ihr zu erhalten? Wie lautet Eure Base- DN und welchen Suchfilter verwendet ihr?
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Verwendet ihr irgendwelche Control OID in eurem Filter? Oder versucht ihr ein paged result zu bekommen?
Poste mal deinen Filter, bitte.
« Letzte Änderung: 04.08.22 - 17:03:00 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Hallo Tode,

wir haben die exakt selben Angaben und Login verwendet wie auch das Printer-Tool. Im Prinzip starteten wir für den Kunden KUNDE.LU hiermit:

O=KUNDE und als Filter dann objectclass=*

Dann haben wir noch die getestet:

DN=KUNDE,DN=LU,O=KUNDE und
DN=KUNDE,DN=LU,OU=KUNDE und
O=KUNDE und
OU=KUNDE

Als Filter wurde Versucht:

objectClass=*
objectClass=Person
objectClass=User

Und dann noch diverse Varianten mit Groß- und Kleinschreibung und Filter in Klammern oder nicht.

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Wie ist denn der User für den LDAP Zugriff auf Domino angelegt?
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Wie ist denn der User für den LDAP Zugriff auf Domino angelegt?
Das weiss ich leider nicht. Aber der selbe Nutzer wird für den Zugriff durch den LDAP Explorer auch genutzt und hat dort keine Probleme.

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Oder versucht ihr ein paged result zu bekommen?
Ja, unser Tool versucht paged results zu bekommen. Ohne war es einfach zu langsam. Aus der API nutzen wir den Aufruf von ldap_search_init_page() und dann ldap_get_next_page_s(). Wir geben dort aber nur ein Zeitlimit an (120 Sekunden). TotalSizeLimit ist dabei nicht gesetzt.

Code
PageResult.i = ldap_search_init_page(*session\LDAP_Handle, 
                                         LDAP_DN.s, 
                                         #LDAP_SCOPE_SUBTREE, 
                                         LDAP_Filter.s, 
                                         #Null, 
                                         0, 
                                         #Null, 
                                         #Null, 
                                         120, 
                                         0, 
                                         0)

Bei der Abfrage mit ldap_get_next_page_s() ist die PageSize dann 50.
« Letzte Änderung: 04.08.22 - 17:36:55 von Kukulkan2 »

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Zitat
Ja, unser Tool versucht paged results zu bekommen. Ohne war es einfach zu langsam.
Dann hat es damit funktioniert, und der Fehler trat erst nach der Modifikation auf ?


Domino unterstützt paged results nicht. Das wird es sein.
Das funktioniert nur mit einem MS Active Directory.
Ich habe ein ähnliches Problem in Java, wo der MS Domain Controller nur die DEFAULT Anzahl Objekte zurück liefert, es aber mehr Treffer sein sollten. Im konkreten Fall fehlten 2 Objekte über dem Default.
Wenn ich den Code dann z.B. auf ein Google Cloud Dir loslasse, bekomme ich die gleiche Meldung.
Ich muss in meinem Code dann vorher abfragen, ob eine bestimmte OID verfügbar ist (critical extension) wenn nicht, dann schwenke ich von paged results auf all results um.

« Letzte Änderung: 05.08.22 - 06:23:59 von eknori »
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Zitat
Ja, unser Tool versucht paged results zu bekommen. Ohne war es einfach zu langsam.
Dann hat es damit funktioniert, und der Fehler trat erst nach der Modifikation auf ?

Zu langsam bei ActiveDirectory und OpenLDAP. Vor 4 Jahren haben wir dann fest auf Paged Results umgestellt. Bei diesem neuen Kunden hat es noch nie funktioniert, wir nutzen aber auch Paged Results.

Zitat
Domino unterstützt paged results nicht. Das wird es sein.

Das werden wir mal versuchen. Danke!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Habe hier noch etwas gefunden, was meine Vermutung stützt. Auch hier ist ein Domino LDAP im Spiel.

https://www.ibm.com/support/pages/watson-explorer-entity-resolver-fails-crawl-domino-ldap

Domino LDAP kann kein paging.
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Habe hier noch etwas gefunden, was meine Vermutung stützt. Auch hier ist ein Domino LDAP im Spiel.

https://www.ibm.com/support/pages/watson-explorer-entity-resolver-fails-crawl-domino-ldap

Domino LDAP kann kein paging.

Super, vielen Dank! Ja, das passt sehr gut zu unserem Fehlerbild.

Wir machen gerade den "Simple LDAP Search" in unserem Tool per Schalter wieder verfügbar und können das gleich nächste Woche beim Kunden mal testen. Ich gebe hier auf jeden Fall ein Feedback!

Offline Kukulkan2

  • Frischling
  • *
  • Beiträge: 11
Hallo,

nur als finales Update: Das umstellen auf simple querys (ohne paged results) hat geholfen. Jetzt ist unser Tool zwar wieder langsam, aber wenigstens geht's prinzipiell auch mit Lotus Notes.

Ich hab mal gegoogelt und diese Erweiterung von LDAP ist aus 1999. Also zumindest der RFC. Schräg, dass das bis heute nicht in Lotus Notes umgesetzt wurde. Es beschleunigt vieles und verhindert, dass Apps lange auf Antworten oder Übertragung warten müssen. Das führt bei uns zumindest auch zu kurzen blockierungen der GUI. Das in einen extra Thread auszulagern, nur für Lotus Notes, scheint uns aber momentan zu viel Aufwand. Das ist dann mit Lotus Notes halt so.

Auf jeden Fall danke für den Tipp!!!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz