LDAP on RT RT 3.8.14 with RT-Authen-ExternalAuth-0.11

Hi all,

I’m trying to configure LDAP authentication on RT3.8.14 with RT-Authen-to-0.11 ExternalAuth authentication on an ACTIVE DIRECTORY.

After having made the config RT_SiteConfig.pm, I raise the httpd.

When I authenticate on the login page I get the following message:
“An internal RT error has occurred. Your administrator can find more details in RT’s log files.”

In rt.log I have the following messages:

[Fri Sep 21 07:18:45 2012] [debug]: Attempting to use external auth service: My_LDAP (/opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth.pm:186)
[Fri Sep 21 07:18:45 2012] [debug]: Calling UserExists with $username (myuser) and $service (My_LDAP) (/opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth.pm:227)
[Fri Sep 21 07:18:45 2012] [debug]: UserExists params:
username: myuser , service: My_LDAP (/opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/LDAP.pm:299)
[Fri Sep 21 07:18:45 2012] [error]: Not a HASH reference at /opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/LDAP.pm line 311. (/opt/rt3/bin/…/lib/RT/Interface/Web/Handler.pm:277)

Note: With tcpdump, I do not see any request sent to the LDAP server

Below is a part of RT_SiteConfig.pm

Set($ExternalAuthPriority, [ ‘My_LDAP’ ] );
Set($ExternalInfoPriority, [ ‘My_LDAP’ ] );

Enable/Disable LDAP services

Set($LdapExternalAuth, 1);
Set($LdapExternalInfo, 1);
Set($WebExternalAuth , ‘0’);

Set($ExternalServiceUsesSSLorTLS, 0);
Set($AutoCreateNonExternalUsers, 1);
Set($ExternalSettings, {‘My_LDAP’ => {
‘type’ => ‘ldap’,
‘server’ => ‘x.x.x.x’,
‘user’ => ‘cn=sync-rt,dc=corp,dc=omt,dc=lcl’,
‘pass’ => ‘xxxxxxxx’,
‘base’ => ‘dc=corp,dc=omt,dc=lcl’,
‘filter’ => ‘(&(objectClass=user)(samaccounttype=805306368)(objectCategory=person)(cn=*))’,
‘d_filter’ => ‘(userAccountControl:1.2.840.113556.1.4.803:=2)’,
‘tls’ => 0,
‘ssl_version’ => 3,
‘net_ldap_args’ => [ version => 3 ],
‘group’ => ‘ou=OU_utilisateurs,dc=corp,dc=omt,dc=lcl’,
‘group_attr’ => ‘member’,
‘attr_match_list’ => [ ‘Name’, ‘EmailAddress’],
‘attr_map’ => [ ‘Name’ => ‘cn’,
‘EmailAddress’ => ‘mail’,
‘Organization’ => ‘physicalDeliveryOfficeName’,
‘RealName’ => ‘cn’,
‘ExternalAuthId’ => ‘samaccountname’,
‘Gecos’ => ‘samaccountname’,
‘Address1’ => ‘streetAddress’,
‘City’ => ‘l’,
‘State’ => ‘st’,
‘Zip’ => ‘postalCode’,
‘Country’ => ‘co’,
‘WorkPhone’ => ‘telephoneNumber’
],
},

                           }

Do you have an idea of ​​the problem?

Thank you for your help

Laurent

[Fri Sep 21 07:18:45 2012] [error]: Not a HASH reference at /opt/rt3/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/LDAP.pm line 311. (/opt/rt3/bin/…/lib/RT/Interface/Web/Handler.pm:277)

This implies some part of your config is wrong, and looking down
below, attr_map is a hashref not an array ref (so {} not [])

-kevin