MIM – Microsoft Identity Manager Active Directory Photo Import

Merhaba Arkadaşlar,
Bu makalemizin konusu Active Directory’de kullanmış olduğumuz kullanıcı profil fotoğraflarını SharePoint’e MIM aracılığı ile aktarma.
Kullanıcı fotoğraflarının SharePoint portale aktarmamızın sebebi, son kullanıcının portal kullanımını cazip kılmak. Son kullanıcı kendi resmini gördüğü zaman aidetlik duygularında taşma yaşanabilir.
Mesela bir telefon rehberi uygulaması yapsanız kullanıcı isimlerinin yanında kullanıcılarında resminin olması cezbedici bir özellik.
Bunun gibi bir çok uygulamada kullanıcı fotoğraflarını kullanabilirsiniz.

İlk olarak Active Directory’de kullanıcı profillerine fotoğrafları yüklemek ile işe başlayabilirsiniz. Bu işlem için ücretli veya ücretsiz 3. parti uygulamalar mevcuttur. Ücretsiz olanlardan en popüler olanı CodeTwo Active Directory Photos uygulamasıdır.
Bu işlemi ücretis farklı bir şekilde powershell scripti ile de yapabilirsiniz. Örnek bir scripti aşağıda sizlerle paylaşıyorum.
[code lang=”powershell”]
Import-Module ActiveDirectory
$photo=[byte[]](Get-Content “ahmet.simsek.jpg” -Encoding byte)
Set-ADUser “ahmet.simsek” -Replace @{thumbnailPhoto=$photo}
[/code]
Sizlere tavsiyem bir powershell script hazırlayarak bu işlemleri toplu olarak yapabilirsiniz.
Algoritma şu şeekilde olmasında fayda var;

  1. AD üzerinde fotoğraf ekleyeceğiniz kullanıcıların sAMAccountName bilgilerini powershell yardımı ile bir CSV dosyasına çıkartın.
  2. Kullanıcıların resimlerini bir klasöre .jpg (hasan.koroglu.jpg gibi) olarak toplayın.
  3. PowerShell yardımı ile CSV dosyasını satır satır okuyarak, her satırda yukarıdaki scripti çalıştırın.

Talep olursa bu scripti hazırlayıp sizlerle paylaşabilirim.

Aşağıdaki görselde göreceğiniz üzere ahmet.simsek kullanıcısı için fotoğraf yükleme işlemini script ile tamamladım.
MIM_05_04
AD üzerinde ilgili kullanıcının attributelarına baktığım zaman thumbnailPhoto’ya ait değer dolmuş gözüküyor.
MIM_05_05
Şimdi Synchronization Service Manager üzerinde gerekili olan ayarları kontrol ediyorum.
İlk olarak ADMA’yı çif tıklayarak ayarlarından Configure Attribute Flow kısmındaki eşleşmeleri sırasıyla kontrol edelim.
MIM_05_02
Aynı kontrolü SPMA için de yapalım.
MIM_05_03
Kontrollerimiz sonrası My Site sitemizi kuralım.
İlk önce DC sunucumuzdaki DNS Managerımızda My Site için kullanacağımız domain için CNAME kaydı oluşturalım. Oluşturacağımız kayıt SharePoint sunucumuzu referans olarak kullansın. Ben bu örneğimizde http://benim sitesini kullanacağım. Kayıt olarak da SP sunucumu işaret ettim.
MIM_05_18
Ardından SharePoint Central Administration sayfamızı açalım. Manage web application kısmından yeni bir web application oluşturalım.
MIM_05_08
MIM_05_09
Port olarak yine 80 portunu kullanalım ve Host Header olarak DNS’de oluşturduğumuz kaydı girelim.
MIM_05_10
Application Pool kısmında güvenli bir hesap seçelim.
MIM_05_11
Veritabanı olarak ileride karışıklığa sebep olması için uygun bir isim girelim.
MIM_05_12
Web App’imiz oluştu.
MIM_05_13
Şimdi de My Site için Site Collection oluşturalım. Burada dikkat etmeniz gereken Template olarak Enterprise kısmından My Site Host’u seçmelisiniz.
MIM_05_14
Sitemiz kurulduktan sonra Manage Web Application kısmından oluşturduğumuz My Site Web Applcaiton’ın ayarlarını yapmalıyız.
İlk olarak My Site Host için oluşturduğumuz Web Application kaydınız seçelim. Ribbon Bar’dan Self-Service Site Creation tuşuna basalım.
MIM_05_15
Açılan sayfada en üstte yer alan On seçeneğini seçelim.
MIM_05_16
Daha sonra Manage Web Application kısmında yine My Site Host için oluşturduğumuz Web Application kaydınız seçelim. Ribbon Bar’dan Managed Paths tuşuna basalım.
Bu ekranda Path olarak “kisisel” seçelim ve Wildcard olarak ekleyelim.
MIM_05_21
Şimdi Central Administration’dan Manage Service Applications kısmından User Profile Service Applications’ı açalım. My Site Setting kısmında yer alan Setup My Sites bağlantısını açalım.
MIM_05_28
Açılan sayfada My Site Host kısmına My Site için kullanacağımız URL’yi yazalım.
Personal Site Location kısmına daha önce Managed Paths kısmında oluşturduğumuz path’i girelim.
MIM_05_22
Artık biraz aksiyon alalım. MIM sunucumuzda Delta Sync işlemini başlatalım.
MIM_05_06
Yapılan işlemleri kontrol ettiğimizde Ahmet Şimşek kullanıcısı için yaptığımız değişiklik MIM üzerinde gözüktü.
MIM_05_07
Resimlern SharePoint’e aktarıldığını görmek için http://benim/User%20Photos/ adresine girelim.
MIM_05_23
Göreceğiniz üzere resimler GUID olarak oluşturulmuş. Şimdi bu dosyaların SharePoint tarafında kullanılması için aşağıdaki powershell scriptini SharePoint sunucumuzda Management Shell ile çalıştıralım.
[code lang=”powershell”]
Update-SPProfilePhotoStore -createthumbnailsForImportedPhotos $true -MySiteHostLocation http://benim
[/code]
Kodu ilk çalıştırdığımızda aşağıdaki hatayı alabiliriz.

Update-SPProfilePhotoStore : UserProfileDBCache_WCFLogging :: ProfileDBCacheServiceClient.GetUserData threw exception:
Access is denied.
At line:1 char:1
+ Update-SPProfilePhotoStore -createthumbnailsForImportedPhotos $true – …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidData: (Microsoft.Offic…ofilePhotoStore:SPCmdletUserProfilePhotoStore) [Update-S
PProfilePhotoStore], UserProfileApplicationNotAvailableException
+ FullyQualifiedErrorId : Microsoft.Office.Server.UserProfiles.PowerShell.SPCmdletUserProfilePhotoStore

MIM_05_24
Bu hatanın sebebi; SharePoint Management Shell’i çalıştırdığımız SP_Admin kullanıcısının yetersiz yetkisi. Bu scriptFarm Admin hesabı ile çalıştırılması gerekmektedir. Bu sebeple PowerShell’i Run as Different User diyerek çalıştırıp  scripti tekrar çalıştırıyorum
MIM_05_25
User Photos kitaplığına baktığımda resimlerin isimlerinin değiştini görebilirsiniz.
MIM_05_26
http://benim/Person.aspx sayfasına baktığımızda kullanıcılarımızın resimlerinin geldiğini görebilirsiniz.
MIM_05_27
Bir sonraki makalemizin konusu Photo Import işlemlerinde yaşayabileceğimiz sorunlar ve çözümleri hakkında olacak.
Allah’a emanet olunuz.

TOC

  1. Giriş
  2. MIM – Microsoft Identity Manager Kurulumu
  3. MIM – Microsoft Identity Manager Yapılandırması
  4. MIM – Microsoft Identity Manager Senkronizasyonunu otomatikleştirmek
  5. MIM – Microsoft Identity Manager Active Directory Photo Import
  6. MIM – Microsoft Identity Manager Active Directory Photo Import Sorun Giderme
  7. Varsayılan MIM SharePoint 2016 Attribute Eşleşmeleri
  8. MIM – Microsoft Identity Manager Farklı Attribute’ları Kullanma

Leave a Reply

Your email address will not be published. Required fields are marked *