Photos dans Active Directory directement depuis l’ADUC

Il  y a pas mal d’années j’avais adapté un exemple du SDK de Windows permettant d’étendre l’ADUC afin d’y stocker la photo de l’utilisateur dans l’attribut natif thumbnailPhoto.

L’exemple de Microsoft ne gérant que les images bitmap et l’attribut étant limité à 100Ko, autant dire qu’il n’était pas exploitable. J’avais alors ajouté le code nécessaire au support d’images JPEG, par la même occasion j’avais ajouté l’accès à des attributs supplémentaires (employeeNumber, employeeID, carlicense) qui à l’époque n’étaient pas directement accessibles depuis l’ADUC (l’éditeur d’attributs étant arrivé avec Windows 2008).  Notez que si vous souhaitez effectuer des recherches via ces attributs il sera important  de les indexer dans AD.

Un certain nombre de mes clients utilisent depuis des années cette petite extension sans aucun problème (du moment qu’ils respectent les limites imposées par le schéma Active Directory). Avec le déploiement massif d’Outlook 2010, qui utilise nativement le contenu de l’attribut thumbnailPhoto lors de l’affichage des mails, je me suis dit que cela interesserait sans doute quelqu’un de pouvoir administrer l’attribut directement depuis l’ADUC.

L’onglet fonctionne de Windows 2000 à 2008R2 (attention à bien utiliser la dll x64).

Voici le rendu:

L’attribut permet de gérer directement la photo depuis l’ADUC, au format JPEG

 

Télécharger la dll: OngletPhotoAduc

Pour l’installation, c’est un peu technique mais relativement simple.

Etapes 1 et 2 à réaliser sur chaque machine ou l’ADUC est installée.

Etape 3 à réaliser une seule fois.

1) Copier la DLL (32 ou 64bits) dans le répertoire system32 de votre installation Windows par exemple

2) Ouvrez une ligne de commande et enregistrez la DLL auprès du système via la commande :  regsvr32 userproppage.dll

3) Partie « technique »:

- lancer adsiedit.msc et ouvrez la partition Configuration du domaine.

- Puis ouvrez les propriétés de CN=user-display,CN=40C,CN=DisplaySpecifiers,CN=Configuration,<Base DN de votre domaine>   (40C = France, 409= US)

- Editez l’attribut adminPropertyPage

- Finalement, ajoutez une nouvelle valeur contenant <number>,{69D967C6-AB39-47b7-8F00-410185C80F89} ou <number> est un numéro encore inutilisé dans l’attibut.

Voici le résumé en image:

 

Voila ! A partir de maintenant si vous utilisez outlook 2010 et que votre photo est renseignée, vos collaborateurs auront votre photo sous le nez à chaque email !

Vous pouvez aussi jeter un oeil à ce PoC: http://msdn.microsoft.com/fr-fr/netframework/cc563816.aspx , génération d’organigramme depuis ActiveDirectory (avec photo bien entendu).

 

Enjoy