diff --git a/CHANGELOG b/CHANGELOG
index 5d97418e56de973ff102a34cdbd2ec4e1724b3a7..bacb1ce3ea69f0e0db453929c7664cec27c7f07c 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -3,7 +3,16 @@ title: "Changements intervenus sur OSE"
 author: Laurent Lécluse - DSI - Unicaen
 ...
 
-#OSE 7.0 (en développement)
+#OSE 8.0 (en développement)
+
+## Corrections de bugs
+
+## Nouveautés
+
+## Notes de mise à jour
+
+
+#OSE 7.0 (béta 2)
 
 ## Corrections de bugs
 
@@ -22,6 +31,10 @@ Les composantes supprimées n'apparaissent maintenant plus dans la liste. Appara
 
 * Dans certains cas, le passage des heures du prévisionnel au réalisé ne fonctionnait pas.
 
+* Les utilisateurs LDAP qui n'ont pas de SupannEmpId peuvent maintenant se connecter à OSE sans soucis
+
+* Lorsqu'un clique sur une composante dans le service référentiel, l'affichage du détail ne plante plus.
+
 ## Nouveautés
 
 * Synchronisation possible de services et des volumes horaires associés (en vue d'import depuis ADE)
@@ -61,6 +74,7 @@ Les composantes supprimées n'apparaissent maintenant plus dans la liste. Appara
     * adresse mail d'envoi, 
     * icône de l'application, 
     * URL des documentations permanents et vacataires dans les paramètres généraux.
+    * possibilité de préciser des informations lorsqu'un recherche une personne pour affectation à OSE
 
 ## Notes de mise à jour
 
@@ -78,6 +92,8 @@ Les paramètres à ajouter puis personnaliser sont :
 | etablissement | contact | Personnalisation du contenu de votre page "contact" (code HTML) |
 | etablissement | icones | Personnaliser l'icône de l'application |
 | mail | from | préciser l'adresse d'expéditeur des mails de OSE |
+| ldap | utilisateurExtraMasque | Masque de données à afficher lorsqu'on recherche une personne en vue de lui créer une affectation | 
+| ldap | utilisateurExtraAttributes | Attributs LDAP à fournir pour le masque ci-dessus |
 
 * Pour la génération des contrats de travail, veillez bien à installer Unoconv sur votre serveur.
 Pour plus d'informations, merci de vous rendre à la page "Procédure d'installation" où tout y est expliqué.
diff --git a/config.local.php.default b/config.local.php.default
index 2c39e80c19f21bdd4458a948f52c0e9461e6372c..097d72ecb3fee7de836c531396cce2ca1f228311 100644
--- a/config.local.php.default
+++ b/config.local.php.default
@@ -150,9 +150,20 @@ return [
          * à rappchcher ensuite de intervenant.utilisateurCode pour faire la correspondance utilisateur => intervenant */
         'utilisateurCode'              => 'supannEmpId',
 
-        /* Filtre pour la recherche d'utilisateurs */
+        /* Filtre de recherche d'utilisateurs pour les affectations */
         'utilisateurFiltre'            => '(eduPersonAffiliation=member)(!(eduPersonAffiliation=student))',
 
+        /* Masque de données permettant de préciser des informations lorsqu'on fait une recherche de personne en vue
+         * de créer une nouvelle affectation d'accès à OSE
+         * Format du masque : http://php.net/manual/fr/function.sprintf.php
+         */
+        'utilisateurExtraMasque'       => '(n°%s; %s)',
+
+        /* Liste des attributs LDAP à fournir au masque de données ci-dessus
+         * Dans l'exemple par défaut, on renvoie l'identifiant du personnel ainsi que son mail
+         */
+        'utilisateurExtraAttributes'   => ['supannEmpId', 'mail'],
+
         /* DN des utilisateurs */
         'utilisateursBaseDN'           => 'ou=people,dc=unicaen,dc=fr',
 
diff --git "a/data/D\303\251ploiement/Changements.pdf" "b/data/D\303\251ploiement/Changements.pdf"
index 5b658693b918a2d35b761392ad0a86e14611ed46..52884f62bce983a722f0d013fd042f1284543896 100644
Binary files "a/data/D\303\251ploiement/Changements.pdf" and "b/data/D\303\251ploiement/Changements.pdf" differ
diff --git "a/data/D\303\251ploiement/Proc\303\251dure d'installation.pdf" "b/data/D\303\251ploiement/Proc\303\251dure d'installation.pdf"
index b3ce60ba558acd3d6e29838f289c358abc3eab95..73915cf56283168e69920126873f89fe3f6bb5d3 100644
Binary files "a/data/D\303\251ploiement/Proc\303\251dure d'installation.pdf" and "b/data/D\303\251ploiement/Proc\303\251dure d'installation.pdf" differ
diff --git "a/data/D\303\251ploiement/Proc\303\251dure de mise \303\240 jour.pdf" "b/data/D\303\251ploiement/Proc\303\251dure de mise \303\240 jour.pdf"
index bf278c6527deebfe0a4fc00473b80eb53f7abced..904f3a2edd63494598f7411aa5fafd3f814b2abf 100644
Binary files "a/data/D\303\251ploiement/Proc\303\251dure de mise \303\240 jour.pdf" and "b/data/D\303\251ploiement/Proc\303\251dure de mise \303\240 jour.pdf" differ
diff --git a/module/Application/src/Application/Connecteur/Factory/LdapConnecteurFactory.php b/module/Application/src/Application/Connecteur/Factory/LdapConnecteurFactory.php
index d96a0e406ad6d5966ae75364479130859d56b22d..625809f50fea3c0b779abe8beeda4a930e7310d1 100755
--- a/module/Application/src/Application/Connecteur/Factory/LdapConnecteurFactory.php
+++ b/module/Application/src/Application/Connecteur/Factory/LdapConnecteurFactory.php
@@ -35,7 +35,6 @@ class LdapConnecteurFactory
             $mapperUser
         );
 
-
         $config = $container->get('Config');
         if (isset($config['unicaen-app']['ldap']['utilisateur'])){
             $configLdapUtilisateur = $config['unicaen-app']['ldap']['utilisateur'];
@@ -55,6 +54,9 @@ class LdapConnecteurFactory
             $service->setUtilisateurCode( $configLdapUtilisateur['CODE'] );
         }
 
+        $service->setUtilisateurExtraMasque(\AppConfig::get('ldap', 'utilisateurExtraMasque', ''));
+        $service->setUtilisateurExtraAttributes(\AppConfig::get('ldap', 'utilisateurExtraAttributes', []));
+
         return $service;
     }
 }
\ No newline at end of file
diff --git a/module/Application/src/Application/Connecteur/LdapConnecteur.php b/module/Application/src/Application/Connecteur/LdapConnecteur.php
index 895f3448b103de01a0bee934a8f6804d396b2261..fb8280307c858f7668108181368b0262f897faf4 100755
--- a/module/Application/src/Application/Connecteur/LdapConnecteur.php
+++ b/module/Application/src/Application/Connecteur/LdapConnecteur.php
@@ -5,6 +5,7 @@ namespace Application\Connecteur;
 use Application\Entity\Db\Composante;
 use Application\Entity\Db\Utilisateur;
 use Application\Service\AbstractService;
+use UnicaenApp\Entity\Ldap\AbstractEntity;
 use UnicaenApp\Entity\Ldap\People;
 use UnicaenAuth\Service\UserContext;
 use UnicaenApp\Mapper\Ldap\Structure as MapperStructure;
@@ -54,6 +55,16 @@ class LdapConnecteur extends AbstractService
      */
     private $utilisateurCode;
 
+    /**
+     * @var string
+     */
+    private $utilisateurExtraMasque;
+
+    /**
+     * @var array
+     */
+    private $utilisateurExtraAttributes;
+
 
 
     /**
@@ -92,13 +103,12 @@ class LdapConnecteur extends AbstractService
             /* @var $foundUsers People[] */
 
             foreach ($foundUsers as $ldapPeople) {
-                $id = $ldapPeople->getData(strtolower($this->getUtilisateurLogin()));
+                $id = $this->getPeopleAttribute($ldapPeople, $this->getUtilisateurLogin());
+
                 $result[$id] = [
                     'id'    => $id,
                     'label' => $ldapPeople->getCn(),
-                    'extra' => " - " . implode(" - ", [
-                            current($ldapPeople->getAffectationsAdmin($this->mapperStructure, true)),
-                        ]),
+                    'extra' => $this->getPeopleExtra($ldapPeople),
                 ];
             }
         }
@@ -108,6 +118,36 @@ class LdapConnecteur extends AbstractService
 
 
 
+    private function getPeopleExtra(AbstractEntity $people)
+    {
+        $masque = $this->getUtilisateurExtraMasque();
+        $attrs = $this->getUtilisateurExtraAttributes();
+
+        $attrsVals = [];
+        foreach( $attrs as $attr ){
+            $attrsVals[$attr] = $this->getPeopleAttribute($people,$attr);
+        }
+
+        return vsprintf($masque, $attrsVals);
+    }
+
+
+
+    private function getPeopleAttribute( AbstractEntity $ldapPeople, string $attribute )
+    {
+        try{
+            $val = $ldapPeople->getData(strtolower($attribute) );
+            if (is_array($val)) $val = implode(',',$val);
+        }catch(\Exception $e ){
+            $val = null;
+        }
+
+        return $val;
+    }
+
+
+
+
     /**
      * Enregistre un people dans la BDD et retourne l'enregistrement correspondant. S'il existe déjà alors il est simplement
      * retourné...
@@ -163,11 +203,7 @@ class LdapConnecteur extends AbstractService
         $ldapUser = $this->serviceUserContext->getLdapUser();
 
         if ($ldapUser){
-            try {
-                return $ldapUser->getData(strtolower($this->getUtilisateurCode()));
-            }catch(\Exception $e){
-                return null;
-            }
+            return $this->getPeopleAttribute($ldapUser,$this->getUtilisateurCode());
         }
 
         return null;
@@ -245,4 +281,52 @@ class LdapConnecteur extends AbstractService
         return $this;
     }
 
+
+
+    /**
+     * @return string
+     */
+    public function getUtilisateurExtraMasque(): string
+    {
+        return $this->utilisateurExtraMasque;
+    }
+
+
+
+    /**
+     * @param string $utilisateurExtraMasque
+     *
+     * @return LdapConnecteur
+     */
+    public function setUtilisateurExtraMasque(string $utilisateurExtraMasque): LdapConnecteur
+    {
+        $this->utilisateurExtraMasque = $utilisateurExtraMasque;
+
+        return $this;
+    }
+
+
+
+    /**
+     * @return array
+     */
+    public function getUtilisateurExtraAttributes(): array
+    {
+        return $this->utilisateurExtraAttributes;
+    }
+
+
+
+    /**
+     * @param array $utilisateurExtraAttributes
+     *
+     * @return LdapConnecteur
+     */
+    public function setUtilisateurExtraAttributes(array $utilisateurExtraAttributes): LdapConnecteur
+    {
+        $this->utilisateurExtraAttributes = $utilisateurExtraAttributes;
+
+        return $this;
+    }
+
 }
\ No newline at end of file