Как добавить фото к учетным записям Active Directory

Сегодня я практически покажу, как я добавляю в атрибут пользователя графический файл. В роли графического файла выступает jpeg фотография пользователя домена. Нужно это чтобы сервисы которые работают с применением Active Directory (on Server 2012 R2 Std) могли извлекать данный атрибут: Microsoft Outlook отображал фотографию тому кому пишем, Skype for Busines отображал фотографии контактов.

Ниже от и до в шагах, то как я делаю всегда.

Шаг №1: Поднимаем контроллер домена

Шаг №2:

1) Способ №1 — По добавлению изображения в учетную запись Active Directory

Чтобы добавить иконку в атрибут (thumbnailPhoto) доменной учетной записи нужно соблюсти следующие условия:

  • Это должен быть графический файл
  • Размер изображения должен быть 96х96 пикселей
  • Вес графического файла не должен превышать 10KB

Через сканер я отсканировал фотографию сделанную давным давно для паспорта и на своей основной системе Ubuntu 18.04 Desktop amd64 привел ее к требуемым условиям:

12345ekzorchik@navy:~$ convert photo1.png -resize 96×96 resize_photo1.jpg ekzorchik@navy:~$ file resize_photo1.jpg resize_photo1.jpg: JPEG image data, JFIF standard 1.01, resolution (DPCM), density 37×37, segment length 16, baseline, precision 8, 73×96, frames 3

После скопировал полученное изображение на домен контроллер.

Запускаю консоль PowerShell с правами Администратора, предварительно авторизовавшись на домен контроллере с правами «Администратор Домена»

12345PS C:\Windows\system32> $phone=[byte[]](Get-Content “c:\ad_photo\photo.jpg” -Encoding byte) PS C:\Windows\system32> set-aduser aollo -replace @{thumbnailPhoto=$photo} PS C:\Windows\system32>
Добавление фото в атрибут через PowerShell

Затем открываю оснастку:

Start — Control Panel — Administrative Tools — Active Directory Users and Computers — View — Advanced Features, а после найдя свою доменную учетную запись открыв ее свойства перехожу во вкладку «Attribute Editor», нахожу атрибут: thumbnailPhoto и вижу что содержимое не пусто, как по дефолту, а содержит закодированное изображение.

Закодированное изображение в атрибуте

Так отлично, а как его визуализировать, т.е. Посмотреть как оно будет отображаться.

Способ №2: Загрузка фото для пользователя Active Directory с помощью программы.

1) Программа: C2ADPhotoSetup.exe, но перед ее установкой на домен контроллер нужно установить «Microsoft .NET Framework 4.6»

Устанавливаю в системе .NET Framework 4.6

Нажимаю кнопку «Yes» и мастер установки предложит скачать из интернета пакет размером 93Мб, соглашаюсь нажатием кнопки «Install», но у меня упорно установка обрывалась с сообщением «.NET Framework 4.6 has not been installed because. The download of the specified resource has failed». Вывод найдут пакет и желательно с офлайн установкой, т.е. Полный пакет. NDP462-KB3151800-x86-x64-AllOS-ENU.exe

А вот после данный пакет успешно установился — «.NET Framework 4.6.2 has been installed»,

На заметку: обязательно после перезагружаю систему.

После запускаю установку C2ADPhotoSetup.exe, каталог установки оставляю дефолтным:

C:\Program Files\CodeTwo\CodeTwo Active Directory Photos\ и нажимаю кнопку «Install»

ПО C2ADPhotoSetup.exe извлекает закодированное изображение из атрибута Active Directory

и действительно добавление через PowerShell успешно отработали по добавлению изображения в соответствующий атрибут моей учетной записи (Login: aollo)

Из настроек программы (Settings) узнаю интересное по присвоению изображения учетным записям:

AD attribute to useMax size
ThumbnailPhoto100KB
ThumbnailLogo32KB
JpegPhoto32767KB
Photo32767KB
Атрибуты Active Directory которые могут содержать изображение

Но удобнее все же это делать через программу если не в ладах с консолью, только если хочется научиться чему-то новому или поставить себе задачу — «А смогу ли я», то тогда только через PowerShell.

Итого, поставленная задача по добавлению изображения в атрибут Active Directory выполнена и применяется если нужно. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.