[horde] Problems with PASSWD and LDAP
Jan Schneider
jan at horde.org
Thu Jan 21 13:56:54 UTC 2016
Zitat von David Cunningham <dcunningham at additionnetworks.net>:
> Here is a further follow up…
>
> This works:
>
> <?php
> $backends['ldap'] = array(
> 'disabled' => false,
> 'name' => 'Courier Mail Server',
> 'preferred' =>
> 'courier.additionnetworks.net<http://courier.additionnetworks.net>',
> 'driver' => 'Ldap',
> 'policy' => array(
> 'minLength' => 6,
> 'minNumeric' => 1,
> ),
> 'params' => array(
> 'host' =>
> 'courier.additionnetworks.net<http://courier.additionnetworks.net>',
> 'port' => 389,
> 'basedn' =>
> 'ou=test.mecnet.net<http://test.mecnet.net>,ou=customers,dc=mecnet,dc=net',
> // LDAP object key attribute.
> 'uid' => 'uid',
> // The attribute storing the password.
> //'attribute' => 'Password',
> // These attributes will enable shadow password policies.
> // 'shadowlastchange' => 'shadowLastChange',
> // 'shadowmin' => 'shadowMin',
> // This will be appended to the username when looking for the userdn.
> //'realm' => '',
> // Use this filter when searching for the user's DN.
> //'filter' => 'uid',
> // Hash method to use when storing the password
> 'encryption' => 'crypt',
> // Whether to enable TLS for this LDAP connection
> // Note: make sure that the host matches cn in the server
> certificate.
> 'tls' => false,
> // Determine the user's DN. %u will be replaced by the user's ID.
> // Alternatively, disable this option and instead use the 'userdn'
> // hook (config/hooks.php) to dynamically set the userdn.
> //'userdn' => 'uid=%u,ou=%d,ou=customers,dc=mecnet,dc=net'
> ),
> );
>
>
> But!!! I cannot do that… I need the domain name (IE,
> test.mecnet.net<http://test.mecnet.net> in this example) to be
> dynamic as I have dozens of different domains logging in. This user
> is dcunningham at test.mecnet.net<mailto:dcunningham at test.mecnet.net>.
> I need that OU to be dynamic. It says that %d should be replaced
> with the domain, but it does not work. When searching the code, I
> do not see a str_replace for %d… just %u.
And it doesn't say that anywhere either. No idea where you got that
information from.
> Dave
>
>
>
>
> On Jan 20, 2016, at 8:38 AM, David Cunningham
> <dcunningham at additionnetworks.net<mailto:dcunningham at additionnetworks.net>>
> wrote:
>
> Hi All, especially Jan,
>
> I never received a follow-up to this. Can you help?
>
> Dave
>
>
>
> On Jan 14, 2016, at 3:49 PM, David Cunningham
> <dcunningham at additionnetworks.net<mailto:dcunningham at additionnetworks.net>>
> wrote:
>
> {
> // Example: Provide LDAP server with a userdn so that you do not
> // have to perform anonymous binds.
> return 'uid=' . $authid . ',ou=$domain,ou=customers,dc=mecnet,dc=net';
> }
You need to parse the domain from the username. If $authid doesn't
contain the domain, you need to get it from somewhere else.
--
Jan Schneider
The Horde Project
http://www.horde.org/
More information about the horde
mailing list