I have had some problems with unreliability of my AD servers. When the server I am pointing at goes down, OTRS comes to a screeching halt. It is frustrating to reconfigure Config.pm to point at a different host. It is even worse if I don't have access to a computer and can't fix it. After getting some feedback from Robert and Volker, I would like to propose a modification to the various LDAP.pm files that would allow for failover to another server if the primary one is not available.
The modules affected are:
Kernel/System/CustomerUser/LDAP.pm
Kernel/System/CustomerAuth/LDAP.pm
Kernel/System/Auth/LDAP.pm
I have included a diff file that contains the modifications made to each
file. The basic idea is a foreach loop that loops through a list of servers
looking for a valid host. The loop quits as soon as the first active host
is found. The list is passed in from Config.pm via a reference to a regular
array.
Here is what I put in Config.pm
# Create an array with the list of LDAP servers. Your primary LDAP server
should be
# listed first.
my @hosts =
('server1.example.com','server2.example.com','server3.example.com','etc');
# Use this when setting up Agent LDAP authentication
$Self->{'AuthModule::LDAP::Host'} = [EMAIL PROTECTED];
#Use this when setting up Customer LDAP authentication
$Self->{'Customer::AuthModule::LDAP::Host'} = [EMAIL PROTECTED];
#Use this if pointing to a Customer User database (that comes from the same
LDAP source
# as your agent and customer auth)
$Self->{CustomerUser} = {
Name => 'LDAP Source',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => [EMAIL PROTECTED],
[...]
Please give me your thoughts on this and whether you think it might be a
candidate for inclusion in a future version of OTRS.
Thank you for your time,
Tyler Hepworth
ldapdiff.tar.gz
Description: Binary data
_______________________________________________ OTRS mailing list: dev - Webpage: http://otrs.org/ Archive: http://lists.otrs.org/pipermail/dev To unsubscribe: http://lists.otrs.org/cgi-bin/listinfo/dev
