Introduction
Cet article a pour but d’expliquer la gestion des photos dans l’annuaire Active Directory via une intégration par un script Powershell. En effet, le référentiel photo d’une entreprise ne respecte pas forcément les préconisations Microsoft. Grâce à un script, nous allons voir comment les respecter et peupler un annuaire Active Directory. La solution proposée permettra d’automatiser le processus en s’affranchissant d’outils tiers qui peuvent réaliser cette opération.
Solution
L’attribut AD permettant de renseigner la photo est thumbnailPhoto. Il y a plusieurs restrictions sur une image de profil :
-
la résolution est limitée à 96×96 pixels
-
la taille ne doit pas éxéder 100Kb
La valeur stockée dans l’attribut thumbnailPhoto est un tableau de bytes.
La solution proposée utilise des classes .Net issue de System.Drawing. Ainsi, on va pouvoir redéfinir la taille d’une image, la centrer et éventuellement définir la qualité si la photo est trop lourde. Afin d’être le plus portable possible, le script interroge Active Directory via ADSI pour réaliser la modification de l’attribut thumbnailPhoto.
NB : Depuis la V15 des produits d’infrastructure Microsoft et grâce au couple Exchange 2013/Lync 2013, il est possible de stocker des photos d’une résolution de 648*648 pixels directement dans la boîte aux lettres de l’utilisateur. Cette dernière est accédée directement via les Exchange Web Services par Lync. Une copie d’une résolution de 48×48 est toujours stockée dans l’attribut thumbnailPhoto.
Script
Le script permet de rendre conforme la photo d’un utilisateur et de la placer sur l’objet Active Directory dans l’attribut thumbnailPhoto. Pour chaque utilisateur, il est nécessaire de renseigner les paramètres suivants :
-
le samaccountname de l’utilisateur
-
le dossier contenant la photo
-
le nom du fichier photo
-
l’extension du fichier photo
Pour vérifier que l’opération s’est correctement exécutée, il suffit de vérifier dans la console Active Directory Users and Computers que l’utilisateur possède bien une valeur pour l’attribut thumbnailPhoto (via l’éditeur d’attribut). La photo peut ensuite être consultée via Outlook (pour les messageries Exchange) ou le client Lync.
Ce script s’exécute utilisateur par utilisateur. Il est possible d’imaginer une logique de traitement « en masse ».
0 commentaires