Ich habe Probleme die Kundendaten aus der AD zu importieren. Agenten können sich anmelden und die Zuordnung aus einer Gruppe in der AD funktioniert.
Nun möche ich die Kundendaten aus der AD einlesen, damit ich sie im Ticket suchen kann. Wenn ich aber den folgenden Abschnitt in der Config.pm einfüge, bekomme ich den Fehler “syntax error at /opt/otobo/Kernel/Config.pm line 98, near “BaseDN” Global symbol “$Self” requires explicit package name”
Hier der Abschnitt:
$Self->{CustomerUser} = {
Name => ‘LDAP Userdaten’,
Module => ‘Kernel::System::CustomerUser::LDAP’,
Params => {
Host => ‘dc1.domain.de’
BaseDN => ‘dc=domain,dc=de’,
SSCOPE => ‘sub’,
UserDN => ‘Domainbenutzer@domain.de’,
UserPW => ‘GeheimesPasswort’,
AlwaysFilter => ”,
# die if backend can’t work
Die => 0,
Params => {
port => 389,
timeout => 120,
async => 0,
version => 3,
},
},
CustomerKey => ‘sAMAccountName’,
# customer #
CustomerID => ‘mail’,
CustomerUserListFields => [‘cn’, ‘mail’],
CustomerUserSearchFields => [‘sAMAccountName’, ‘cn’, ‘mail’],
CustomerUserSearchPrefix => ”,
CustomerUserSearchSuffix => ‘*’,
CustomerUserSearchListLimit => 250,
CustomerUserPostMasterSearchFields => [‘mail’],
CustomerUserNameFields => [‘givenname’, ‘sn’],
# Configures the character for joining customer user name parts. Join single space if it is not defined.
CustomerUserNameFieldsJoin => ”,
# show customer user and customer tickets in the external interface
CustomerUserExcludePrimaryCustomerID => 0,
# add a ldap filter for valid users (expert setting)
# # CustomerUserValidFilter => ‘(!(description=gesperrt))’,
# admin can’t change customer preferences
AdminSetPreferences => 0,
# cache time to live in sec. – cache any ldap queries
# CacheTTL => 0,
Map => [
[ ‘UserTitle’, Translatable(‘Title or salutation’), ‘title’, 1, 0, ‘var’, ”, 1, undef, undef ],
[ ‘UserFirstname’, Translatable(‘Firstname’), ‘givenname’, 1, 1, ‘var’, ”, 1, undef, undef ],
[ ‘UserLastname’, Translatable(‘Lastname’), ‘sn’, 1, 1, ‘var’, ”, 1, undef, undef ],
[ ‘UserLogin’, Translatable(‘Username’), ‘sAMAccountName’, 1, 1, ‘var’, ”, 1, undef, undef ],
[ ‘UserEmail’, Translatable(‘Email’), ‘mail’, 1, 1, ‘var’, ”, 1, undef, undef ],
[ ‘UserCustomerID’, Translatable(‘CustomerID’), ‘mail’, 0, 1, ‘var’, ”, 1, undef, undef ],
[ ‘UserDepartment’, Translatable(‘Department’), ‘department’, 1, 0, ‘var’, ”, 1, undef, undef ],
[ ‘UserPhone’, Translatable(‘Phone’), ‘telephonenumber’, 1, 0, ‘var’, ”, 1, undef, undef ],
[ ‘UserAddress’, Translatable(‘Address’), ‘postaladdress’, 1, 0, ‘var’, ”, 1, undef, undef ],
[ ‘UserComment’, Translatable(‘Comment’), ‘description’, 1, 0, ‘var’, ”, 1, undef, undef ],
],
};
Wo muss ich einen expliziten Paketnamen einfügen? Hat jemand einen Tipp was ich übersehe?
Das hatte ich gestern auch bemerkt, vielen Dank für deine Antwort!
Als ich das Komma ergänzt habe, konnte der Server noch immer nicht starten. Ich bekam ich folgenden Fehler:
[Wed Jun 01 14:50:45.697323 2022] [:error] [pid 1036163:tid 140569095427840] Attempt to reload Kernel/System/ObjectManager.pm aborted.
Compilation failed in require at /opt/otobo/bin/cgi-bin/index.pl line 32.
BEGIN failed–compilation aborted at /opt/otobo/bin/cgi-bin/index.pl line 32.
Heute Morgen kann ich mich ohne Servererror wieder an Otobo anmelden. Der obige Fehler ist verschwunden. Das importieren der Kundendaten funktioniert aber weiterhin nicht.
Im Apache Error Log findet sich nun die Meldung:
Message: Search failed! 000004DC: LdapErr: DSID-0C0907E9, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
Im Syslog auch:
OTOBO-CGI-51[2082226]: [Error][Kernel::System::CustomerUser::LDAP::CustomerSearch][Line:517]: Search failed! 000004DC: LdapErr: DSID-0C0907E9, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
Hat jemand eine Idee, wie ich herausfinden kann, an welcher Stelle die Verbindung zur AD abbricht / nicht komplett ist?
Die Verbindung funktioniert noch intern über Port 389, die Agenten werden so einwandfrei synchronisiert.
Irgendwo wird die Verbindung nicht abgeschlossen. Im Systemprotokoll kommt bei jeder Kundenabfrage:
Search failed! 000004DC: LdapErr: DSID-0C0907E9, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
Bin für jede Idee dankbar wie ich das besser debuggen kann.
Hab jetzt mal mit ldp.exe versucht eine einfache Bindung zum AD herzustellen.
Wenn ich nur den Benutzernamen eingebe und das PW bekomme ich folgenden Fehler:
Error <49>: ldap_simple_bind_s() failed: Ungültige Anmeldeinformationen
Server error: 80090308: LdapErr: DSID-0C09044E, comment: AcceptSecurityContext error, data 52e, v2580
Error 0x80090308 Das Token, das der Funktion übergeben wurde, ist ungültig.
ld = ldap_open(“dc1.domain.de”, 389);
Established connection to dc1.domain.de.
Was eigentlich klar ist, da die Agenten ja fehlerfrei synchronisiert werden.
Das Problem ist also, dass bei dem {CustomerUser} nur Benutzername und PW an die AD übergeben werden und nicht “@Domain.de” und so die Verbindung in einen Fehler läuft.
Jupp, habe ich probiert, bleibt aber beim gleichen Ergebnis. Anscheinend wird nur der sAMAccountName und das PW übergeben.
Die Frage ist warum es bei den Agenten mit
$Self->{‘AuthSyncModule::LDAP::SearchUserDN’} = ‘Domainbenutzer@domain.de‘;
funktioniert, mit den Params UserDN => ‘Domainbenutzer@domain.de‘; aber nicht.
Finde auch keinen anderen Weg wie ich die Userdaten anders mappen kann.
Laut Doku soll es ja genau so funktionieren.
Hier mal die vollständige Fehlermeldung aus dem Apache Error.log:
ERROR: OTOBO-CGI-51 Perl: 5.32.1 OS: linux Time: Tue Jun 7 12:57:49 2022
Message: Search failed! 000004DC: LdapErr: DSID-0C0907E9, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
Nach wie vor bleibt der Fehler:
Message: Search failed! 000004DC: LdapErr: DSID-0C0907E9, comment: In order to perform this operation a successful bind must be completed on the connection., data 0, v2580
ich würde nochmal ein Schritt zurückgehen, die Konfiguration schaut mir nicht ganz vollständig aus. Die aktuelle Konfiguration findest Du in der Datei /opt/otobo/Kernel/Config/Defaults.pm. Hier bitte den CustomerUser für LDAP Teil rauskopieren und in die Datei /opt/otobo/Kernel/Config.pm übernehmen.
Zuerst war Deine Syntax nicht richtig (fehlendes Komma), daran hatte sich der Apache verschluckt (daher ging es am nächsten Tag wieder, ein “service apache restart” hätte hier auch geholfen).
Der Fehler gerade sagt eigentlich nur, dass der Bind nicht erfolgreich war, entweder es stimmt etwas mit dem Bind-User nicht.
Ich gebe hier immer den gesamten Pfad zu dem User an (UserPrincipalName glaube ich). Den Teil mit dem Suffix kannst Du einfach wieder rauswerfen und die UserDN wie folgt angeben:
Wenn Du das gemacht hast, liegt es sicher an irgendeiner Kleinigkeit. Also alles nochmal raus und aus der Defaults.pm neu machen, eventuell hast Du irgendwelche Hochkommas falsch reimkopiert o.ä.
Wir verwenden Cookies, um diese Website optimal gestalten und laufend verbessern zu können. Für Analyse und Statistik nutzen wir Google Analytics (anonymisiert).
Unsere Website verwendet Cookies. Cookies sind kleine Textdateien, die beim Aufruf von Websites im Internetbrowser bzw. vom Internetbrowser auf Ihrem Endgerät gespeichert werden. Diese Cookies enthalten eine charakteristische Zeichenfolge, die eine eindeutige Identifizierung des Browsers beim erneuten Aufrufen der Website ermöglichen.
Sie können das Setzen von Cookies jederzeit über eine entsprechende Einstellung in Ihrem Internetbrowser verhindern. Bereits gesetzte Cookies können jederzeit manuell oder automatisiert gelöscht werden. Dies ist in allen gängigen Internetbrowsern möglich. Wird das Setzen von Cookies im Browser deaktiviert, sind unter Umständen nicht alle Funktionen der Website vollumfänglich nutzbar.
Wir gehen grundsätzlich sehr sparsam mit Cookies um.
Detaillierte Informationen finden Sie in Abschnitt 4 unserer Hinweise zum Datenschutz.
Technisch erforderliche Cookies
Diese Cookies sind erforderlich, um die Darstellung dieser Website und einiger ihrer Features zu gewährleisten.
Deshalb bieten wir hier auch keine Möglichkeit an, diese Cookies zu deaktivieren.
Dessen ungeachtet können Sie jederzeit durch entsprechende Einstellungen in Ihrem Browser alle Cookies deaktivieren. Unter Umständen stehen Ihnen dann nicht mehr alle Funktionalitäten dieser Website zur Verfügung.
Weitere Informationen zu den gesetzten Cookies und zur Speicherdauer finden Sie in Abschnitt 4 unserer Hinweise zum Datenschutz.
Cookies von Google Analytics
Beim Besuch der Website werden Cookies von Google Analytics gesetzt, die eine Analyse der Benutzung unserer Website durch Sie ermöglichen. Ihre IP-Adresse wird dabei durch technische Vorkehrungen pseudonymisiert (IP-Anonymisierung und Deaktivierung der User-ID). Eine Zuordnung der Daten zum aufrufenden Nutzer ist daher nicht mehr möglich. Die Daten werden nicht gemeinsam mit anderen personenbezogenen Daten der Nutzer gespeichert.
Wenn Sie nicht möchten, dass wir Ihren Besuch auf unserer Website verfolgen, können Sie das Tracking in Ihrem Browser hier deaktivieren:
Hinweise zum Datenschutz
Detaillierte Informationen zum Einsatz von Cookies sowie unsere Datenschutzerklärung finden Sie hier: