Hi,

we are using the LDAP backand with MS ActiveDirectory which uses the
charset utf-8. Our MySQL version is unfortunately 4.0.15 and we can't
update so we have to use iso-8859-1 as default charset. Now we experience
problems while trying to log in with usernames containing special chars.
This happens, because usernames are NOT convertet to the right charset
when querying the LDAP database.

Neither Kernel::System::CustomerAuth::LDAP::Auth() nor
Kernel::System::CustomerUser::LDAP::CustomerUserDataGet() does any
convertion.
Why aren't $Param{CustomerID} and $Param{User} _Convert(ed)To() the LDAP
charset in Kernel::System::CustomerUser::LDAP::CustomerUserDataGet()?
In Kernel::System::CustomerAuth::LDAP::Auth() I fixed the problem
temporarily adding the line
 Encode::from_to($Filter, 'iso-8859-1', 'utf-8');
after preparing the $Filter. This should probably be replaced by
Kernel::System::Encode.

My configuration:
    $Self->{CustomerUser1} = {
        Name => 'LDAP Backend',
        Module => 'Kernel::System::CustomerUser::LDAP',
        Params => {
            ...
            SourceCharset => 'utf-8',
            DestCharset => 'iso-8859-1',
        },
        ...
    };
    $Self->{'DefaultCharset'} = 'iso-8859-1';

_______________________________________________
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

Reply via email to