Schlagwörter: Kundeninformation ldap
-
AutorBeiträge
-
-
5. März 2025 um 13:53 Uhr - Views: 23 #34371
Hallo liebe Community,
ich habe in unserem System (OTOBO 11.0.7) kürzlich ein CustomerUser-Backend über ldap angebunden, da ich dachte, dass mir dann u.a. unter dem Widget „Kundeninformation“ nützliche Informationen wie Mail, Telefon usw. angezeigt werden können.
Allerdings bekomme ich keine Kundeninformationen angezeigt, obwohl die ldap-Verbindung funktioniert.
Zumindest werden im Adressbuch Treffer angegeben, die allerdings nicht angezeigt werden, wenn ich beispielsweise nach einem Namen suche, wie hier zu sehen ist:
Außerdem werden beim Erstellen/Antworten von/auf Tickets auch die E-Mails der Kundenbenutzer angezeigt, wenn ich im „An“-Feld etwas eintippe.
Hier nochmal die ldap-Konfiguration aus „Config.pm“ (wie gesagt die ldap-Verbindung funktioniert):
# insert your own config settings "here" #
# config settings taken from Kernel/Config/Defaults.pm #
# ---------------------------------------------------- #
$Self->{AuthModule} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = 'ldaps://beispiel.de';
$Self->{'AuthModule::LDAP::BaseDN'} = 'o=beispiel';
$Self->{'AuthModule::LDAP::UID'} = 'uid';
# $Self->{SessionUseCookie} = 0;
# $Self->{CheckMXRecord} = 0;
# CustomerUser
# (customer user ldap backend and settings)
$Self->{CustomerUser} = {
Name => 'LDAP Backend',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => 'ldap://adressbuch-beispiel.de',
# ldap base dn
BaseDN => 'ou=people,o=beispiel',
# search scope (one|sub)
SSCOPE => 'sub',
# The following is valid but would only be necessary if the
# anonymous user does NOT have permission to read from the LDAP tree
UserDN => '',
UserPw => '',
# in case you want to add always one filter to each ldap query, use
# this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)'
AlwaysFilter => '',
# if the charset of your ldap server is iso-8859-1, use this:
# SourceCharset => 'iso-8859-1',
# die if backend can't work, e. g. can't connect to server
Die => 0,
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
Params => {
port => 389,
timeout => 120,
async => 0,
version => 3,
},
},
# customer unique id
CustomerKey => 'cn',
# customer #
CustomerID => 'mail',
CustomerUserListFields => ['cn', 'mail'],
CustomerUserSearchFields => ['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 customer interface
CustomerUserExcludePrimaryCustomerID => 0,
# add a ldap filter for valid users (expert setting)
# CustomerUserValidFilter => '(!(description=gesperrt))',
# Translate manager flag in mapping from its Distinguished Name to cn, sAMAccountName, uid, mail, etc.
# TranslateManagerTo => 'sAMAccountName',
# admin can't change customer preferences
AdminSetPreferences => 0,
# cache time to live in sec. - cache any ldap queries
# CacheTTL => 0,
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target, link class(es)
# [ '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'), 'uid', 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 ],
# [ 'UserCustomerIDs', Translatable('CustomerIDs'), 'second_customer_ids', 1, 0, 'var', '', 1, undef, undef ],
# [ 'UserManager', Translatable('Manager'), 'manager', 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 ],
# this is needed, if "SMIME::FetchFromCustomer" is active
# [ 'UserSMIMECertificate', 'SMIMECertificate', 'userSMIMECertificate', 0, 1, 'var', '', 1, undef, undef ],
# Dynamic field example
# [ 'DynamicField_Name_X', undef, 'Name_X', 0, 0, 'dynamic_field', undef, 0, undef, undef ],
],
};
Kann mir jemand sagen was das Problem sein könnte?
Vielen Dank und schöne Grüße
-
7. März 2025 um 6:45 Uhr #34380
Du hast das Maping nicht aktiviert.
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target, link class(es)
# [ ‚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‘), ‚uid‘, 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 ],
# [ ‚UserCustomerIDs‘, Translatable(‚CustomerIDs‘), ’second_customer_ids‘, 1, 0, ‚var‘, “, 1, undef, undef ],
# [ ‚UserManager‘, Translatable(‚Manager‘), ‚manager‘, 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 ],# this is needed, if „SMIME::FetchFromCustomer“ is active
# [ ‚UserSMIMECertificate‘, ‚SMIMECertificate‘, ‚userSMIMECertificate‘, 0, 1, ‚var‘, “, 1, undef, undef ],Bei den gewünschten Informationen den Kommentar entfern
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly, http-link-target, link class(es)
# [ ‚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‘), ‚uid‘, 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 ],
# [ ‚UserCustomerIDs‘, Translatable(‚CustomerIDs‘), ’second_customer_ids‘, 1, 0, ‚var‘, “, 1, undef, undef ],
# [ ‚UserManager‘, Translatable(‚Manager‘), ‚manager‘, 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 ],Bei den gewünschten Informationen den Kommentar entfernen.
siehe auch Admin Handbuch
-
7. März 2025 um 16:29 Uhr #34395
Hallo Lars,
es funktioniert jetzt. Mir ist dank deiner Antwort aufgefallen, dass Login, Email und CustomerID notwendig sind. Ich hatte nur Firstname, Lastname und Email gemappt. Ich schätze mal, dass es daran lag. Danke dir!
-
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.