SharePoint Alfresco PHP MySQL
О сайте Контакты
понедельник, 15 сентября 2014 г.

Отображение в SharePoint фото профилей из Active Directory

Внедряя SharePoint на предприятии, хочется заранее позаботиться о том, чтобы он выглядел нарядно и не вызывал отторжения у сотрудников. Идеальная настройка базовых компонентов и быстрое железо — это еще не залог успеха. Профили сотрудников изначально тусклые и однообразные, потому что в них красуется стандартная заглушка для фото. В этой статье я расскажу, как централизованно заполнить профили в SharePoint аватарками пользователей.

Сначала нужно импортировать фотографии в Active Directory, если их там еще нет. Заранее позаботьтесь о том, чтобы в наличии были фотографии jpg размером 200х200. Для их импорта в AD можно использовать простой скрипт на PowerShell:

# Импорт фото в AD

$account = Read-Host -Prompt 'Введите имя пользователя'
$fileName = Read-Host -Prompt 'Введите имя файла фото в формате filename.jpg'

$photo = [byte[]](Get-Content $("C:\pictures\" + $fileName) -Encoding byte) 
Set-ADUser $account -Replace @{thumbnailPhoto=$photo}

Read-Host 'Нажмите Enter, чтобы продолжить...' | Out-Null

Если фото успешно импортированы в Active Directory, то поле thumbnailPhoto будет непустым, там будут бинарные данные.

Теперь можно настроить SharePoint. Сперва необходимо установить соответствие полям изображения в SharePoint 2013 и ActiveDirectory. Для этого необходимо войти в Центр администрирования. Выбрать Управление приложениями-службами, найти Приложение службы профилей пользователей и кликнуть на него. Откроется панель управления профилями, в котором необходимо выбрать Управление свойствами пользователей. Откроется таблица со множеством свойств, среди которых Имя, Фамилия и т.д. Нужно найти свойство Рисунок, вызвать контекстное меню и нажать Изменить.

Откроется страница изменения свойства, в которой требуется пролистать до раздела Сопоставление свойств для синхронизации. Чуть ниже, в разделе Добавление нового сопоставления, нужно выбрать атрибут thumbnailPhoto, выбрать направление Импорт и нажать Добавить. Добавленный элемент сразу же отобразится в разделе Сопоставление свойств для синхронизации. После этого нажать внизу Ok.

Заодно при изменении свойства можно указать, могут ли пользователи самостоятельно менять свою картинку, или нет. Это можно сделать в разделе Параметры изменения.

Затем нужно выполнить синхронизацию профилей. В Центре администрирования нужно зайти в управление приложениями-службами и выбрать Приложение службы профилей пользователей. Нажать запуск синхронизации профилей. В настройках синхронизации выбрать Начать полную синхронизацию, нажать Ok и подождать. Статус будет отображаться.

После этого вы можете зайти в профиль и увидеть, что все текстовые свойства (телефон, имя, фамилия) успешно синхронизировались, а картинки по-прежнему нет.

Чтобы картинки отобразились в SharePoint, нужно войти на сервер SharePoint с правами администратора фермы и выполнить команду PowerShell:

Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://<ServerName>/my

Здесь http://<ServerName>/my - это адрес сайта профилей пользователей. Теперь картинки в профилях будут отображаться.

Не стесняйтесь задавать вопросы в комментариях.

Sergey Lysenko, понедельник, 15 сентября 2014 г.

Комментарии: