wir würden gern die Kundenbenutzer (Email Empfänger) aus einem LDAP Adressbuch ziehen. Hierfür wurde ein LDAP Server aufgesetzt (testweise) und mit Demoeinträgen gefüttert.
Über die Shell lassen sich diese auch mittels ldapsearch auslesen aber bei der Integration in OTRS (5) hapert es leider noch.
Anbei mal der Auszug aus der Config.pm und dem ldapsearch
Config.pm
Code: Select all
$Self->{CustomerUser2} = {
Name => 'LDAP Database Backend',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => 'ldap.server.de',
# ldap base dn
BaseDN => 'ou=adresses,dc=server,dc=de',
# 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 => 'cn=admin,dc=server,dc=de',
UserPw => '1234',
# 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 => 'uid',
CustomerKey => 'st',
# customer #
CustomerID => 'mail',
CustomerUserListFields => ['cn', 'mail'],
# CustomerUserSearchFields => ['uid', 'cn', 'mail'],
CustomerUserSearchFields => ['st', 'cn', 'mail'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 250,
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenName', 'sn'],
# show now own tickets in customer panel, CompanyTickets
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 => [
# 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', 'Title', 'title', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'givenName', 1, 1, 'var', '', 0 ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
# [ 'UserLogin', 'Username', 'uid', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'st', 1, 1, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
# [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 0 ],
[ 'UserCustomerID', 'CustomerID', 'st', 0, 1, 'var', '', 0 ],
[ 'UserStreet', 'Street', 'street', 1, 0, 'var', '', 0 ],
[ 'UserZip', 'Zip', 'postalCode', 1, 0, 'var', '', 0 ],
[ 'UserCity', 'City', 'l', 1, 0, 'var', '', 0 ],
# [ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ],
#[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 0 ],
#[ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 0 ],
#[ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 0 ],
# this is needed, if "SMIME::FetchFromCustomer" is active
# [ 'UserSMIMECertificate', 'SMIMECertificate', 'userSMIMECertificate', 0, 1, 'var', '', 0 ],
],
};
Code: Select all
ldapsearch -h ldap.server.de:389 -x -b "ou=addresses,dc=server,dc=de" -D "cn=admin,dc=server,dc=de" -W
Code: Select all
Enter LDAP Password:
# extended LDIF
#
# LDAPv3
# base <ou=addresses,dc=server,dc=de> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# addresses, server.de
dn: ou=addresses,dc=server,dc=de
ou: addresses
objectClass: organizationalUnit
objectClass: top
# Testuser, addresses, server.de
dn: cn=Testuser,ou=addresses,dc=server,dc=de
cn: Testuser
givenName: Testuser
l: Testhausen
mail: testuser@server.de
o: server corp
objectClass: inetOrgPerson
objectClass: top
postalCode: 12345
sn: Testuser
street: Teststrasse123
st: 123
...
Auf jeden Fall schon mal Danke im voraus,
Alexander