Ajouter des photos dans l'AD 1

Ajouter des photos dans l’AD

Ce matin on m’a fait une demande sur le fait d’ajouter une photo sur le compte utilisateur d’une personne. Je n’avais jamais entendu parlé de cela, et connaissant un minimum les consoles AD je ne me rappelais aucunement d’un endroit ou l’on pouvait renseigner un tel champ.

Et bien effectivement cela est possible et correspond à un attribut d’un utilisateur (thumbnailPhoto ou jpegPhoto) selon le niveau fonctionnel du domaine 2000 ou 2003. Une rapide recherche sur le Net m’a donc permis de découvrir que cette photo serait directement stockée en binaire dans la base de donnée de AD, mais aussi qu’il n’existait effectivement aucune console permettant de le faire directement.

Donc soit vous êtes des AS du coquillage puissant (alias PowerShell), ou des pro de VB. En attendant pour ceux qui ne veulent pas réinventer la roue voici une petite appli en .net permettant de le faire.

ftp://ftp-developpez.com/lgmorand/dotnet/adimage/%5Bbin%5D%20ADImage.rar

.

A propos Aurelien

Je vous propose également...

[Interview] Martial Auroy, professionnel du monde Microsoft 2

[Interview] Martial Auroy, professionnel du monde Microsoft

Interview avec Martial Auroy, chef d'entreprise d'un centre de formation spécialisé Microsoft Office 365 en Normandie.

Supprimer une boite partagée avec outlook 2010 ou 2013 (environnement Exchange) 3

Supprimer une boite partagée avec outlook 2010 ou 2013 (environnement Exchange)

Après avoir fait une délégation de boîte aux lettres sur le serveur Exchange avec Accès …

8 commentaires

  1. Aurais tu trouvé finalement un intérêt ? 🙂

  2. le hasard faisant parfois bien les choses, voici le code powershell (lettre d’information de http://powershell.com/cs/):

    # adjust picture path:
    $file = “C:pic.jpg”

    $bild = New-Object system.Drawing.Bitmap($file)

    $ms = New-Object IO.MemoryStream
    $bild.Save($MS, ‘jpeg’)
    $MS.Flush()
    $byte = $MS.ToArray()

    # adjust user LDAP path:
    $user = New-Object System.DirectoryServices.DirectoryEntry`
    (“LDAP://10.17.141.219/CN=Tobias,CN=Users,DC=powershell,DC=local”)
    $User.Properties[“jpegPhoto”].Value = $byte
    $user.SetInfo()

  3. Bonjour et merci pour l’anecdote, cela fait un moment que l’on m’avait fait la demande et impossible de mettre la main sur un outil ou un script valable. Il faut savoir que cette manip est bonne pour l’infra 200 et 2003, à tester avec 2007/2008 (exchange) mais je ne suis pas sur.

    Cependant avec Exchange 2010, Microsoft ont intégré un outil important les images.

    C’est agréable d’avoir les photos de ces correspondants à travers Exchange Sharepoint.

    Merci pour l’astuce.

  4. Oui peut-être… mais nous on préfère coquillage.
    D’ailleurs sur plusieurs sites de traduction le mot shell est traduit comme ( coquille, coque, obus, carapace, coquillage, carcasse, cosse, carapace de tortue, saillie) … SAILLIE ???!!! Puissante saillie, ça sonne bien 😉

  5. Pour information, “Shell” peut se traduire par “coquille” mais en aucun cas par “coquillage” (seashell).
    Ca fait plusieurs fois que je vois l’erreur sur ce site.

  6. Ah oui, c’est bien ça! La photo est stockée à un seul endroit, et sharepoint, Exchange, Lync etc héritent du trombinoscope. Allons, est-ce encore un souci quelques 20Mo de plus ou de moins sur un serveur ? Hum ?

  7. La remarque est juste !
    j’aurais peut être dû préciser que l’image ne doit pas dépasser 10 Ko ce qui fait pour un AD de 2000 Users (sa fait déjà un trés bel annuaire) -> 20 Mo. Sachant que la réplication AD est “différentielle” le plus petit ADSL suffit trés largement pour la réplication.
    Quand à l’intéret , voir la photo du collaborateur dans Outlook, lync… etc.
    Ensuite chacun est libre , comme pour toute chose dans une infra de peser le pour et le contre.

  8. quel intérêt?
    car ça va gonfler considérablement l’AD et compliquer les réplications entre serveurs…