I’m using an LDAP filter, that otherwise works, in
RT-Authen-ExternalAuth that is giving me an perl error that I’m having
trouble getting rid of. Here is my configuration (names changed to
protect the innocent):
Set($ExternalSettings, {
'My_LDAP' => {
'type' => 'ldap',
'server' => 'ldap.myorg.org',
'user' => 'cn=authentication,ou=widgets,o=myorg',
'pass' => 'SUPERSEKRET',
'tls' => 1,
'base' => 'ou=accounts,o=myorg',
'filter' => '(objectClass=FooBarBoo)',
'd_filter' => '(objectClass=Deactivated)',
'net_ldap_args' => [ version => 3 ],
# Users are allowed to log in via email address or account
# name
'attr_match_list' => [
'uid',
],
# Import the following properties of the user from LDAP upon
# login
'attr_map' => {
'RealName' => 'cn',
},
},
} );
And here’s the error:
[28018] [Thu Dec 4 22:34:57 2014] [error]: Can’t locate object method
"as_string" via package “(objectClass=FooBarBaz)” (perhaps you forgot to
load “(objectClass=FooBarBoo)”?) at
/usr/local/local/plugins/RT-Authen-ExternalAuth/lib/RT/Authen/ExternalAuth/LDAP.pm
line 469.
I’ve tried quoting, escaping, and staring blankly at the code for hours
on end, but filter just doesn’t digest. Can any tell me what I’m missing?