Commit b73dc8a1 authored by Laurent Lecluse's avatar Laurent Lecluse
Browse files

Possibilité de personnaliser l'attribut LDAP utilisé pour peupler le username des users

parent aaa0f220
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -18,6 +18,11 @@ $settings = [
        200 => 'UnicaenAuth\Provider\Identity\Db',    // en 2e
        100 => 'UnicaenAuth\Provider\Identity\Ldap',  // en 3e @deprecated
    ],

    /**
     * Attribut LDAP utilisé pour le username des utilisateurs
     */
    'ldap_username' => 'supannaliaslogin',
];

return [
+6 −0
Original line number Diff line number Diff line
@@ -15,6 +15,12 @@ $settings = [
    'enable_privileges' => true,

    'entity_manager_name' => 'doctrine.entitymanager.orm_default', // nom du gestionnaire d'entités à utiliser

    /**
     * Attribut LDAP utilisé pour le username des utilisateurs
     * A personnaliser au besoin
     */
    //'ldap_username' => 'supannaliaslogin',
];

$config = [
+38 −7
Original line number Diff line number Diff line
@@ -19,6 +19,11 @@ class ModuleOptions extends \ZfcUser\Options\ModuleOptions
     */
    protected $saveLdapUserInDatabase = false;

    /**
     * @var string
     */
    protected $ldapUsername;

    /**
     * @var array
     */
@@ -84,6 +89,32 @@ class ModuleOptions extends \ZfcUser\Options\ModuleOptions
        return $this->saveLdapUserInDatabase;
    }



    /**
     * @return string
     */
    public function getLdapUsername()
    {
        return $this->ldapUsername;
    }



    /**
     * @param string $ldapUsername
     *
     * @return ModuleOptions
     */
    public function setLdapUsername($ldapUsername)
    {
        $this->ldapUsername = $ldapUsername;

        return $this;
    }



    /**
     * set cas connection params
     *
+1 −1
Original line number Diff line number Diff line
@@ -64,7 +64,7 @@ class User implements ServiceLocatorAwareInterface, EventManagerAwareInterface

        switch (true) {
            case $userData instanceof People:
                $username = $userData->getSupannAliasLogin();
                $username = $userData->getData($this->getOptions()->getLdapUsername());
                $email = $userData->getMail();
                $password = 'ldap';
                $state = in_array('deactivated', ldap_explode_dn($userData->getDn(), 1)) ? 0 : 1;