Consider the following scenario. You have JPG pictures in AD, stored with the users thumbnailPhoto attribute. You try to import pictures for a user profile from the Active Directory thumbnailPhoto attribute, to store within the Picture attribute in Microsoft SharePoint Server 2010.
You have set up an import Picture URL mapping. User Profile synch and mysites are configured and working fine. Then, you perform a full synchronization in the SharePoint server.
In this scenario, the pictures are NOT added to the user profile in the SharePoint server.(easy test - look at your MySite and select My Profile - do you see the new picture?)
Note: You CAN use following SharePoint PowerShell cmdlet command to perform the import operation:Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://<YourServerName>/myThe cmdlet was introduced in this fix: http://support.microsoft.com/kb/2394320 (14.0.5128.5000)
You just map the thumbnailPhoto AD attribute with the Picture property in SharePoint, then run the sync, finally run the cmdlet.
create the Mapping in SP2010 or SP2013: go to Central Admin->Application Management->Manage Service Applications select your User Profile Service Application select the People->Manage User Properties tab in the left-hand column, look down and select the Picture property. edit this - down the bottom is 'Add New Mapping' and via the dropdown on Attribute, select thumbnailPhoto. it should then look like this: User Profile Synch Connection thumbnailPhoto Importgo back to the Manage User Properties and you should now see Picture URL thumbnailPhoto
OK, so now Synchronization->Start Profile Synchronization. Let that run through.Next you will want to double-check your MySiteHostLocation.select My Site Settings->Setup My Sitesgrab the entry from My Site Host Location - that is what we need for the MySiteLocation parameter.
so, on the SharePoint box, launch a SharePoint PowerShell, (run as administrator).the command will be as per below, with your path replacing "http://<YourServerName>/my"
Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation http://<YourServerName>/my
Now, go back to your mysite, select your profile and... voila!! the new picture has been pulled in from AD.
Things that can go wrong:
Great post! I followed these steps and I can see user's pictures in People Search as well as in their profiles.
The only point when I got error in PowerShell was that I was logged on with the 'Setup' account. Then I logged on with Farm admin account which had DBO permission on My Sites database and User Profile databases.
Also, just to be clear, I did this in SharePoint 2013.
What if we are using another custom attribute that isn't showing in my data source to be able to map it. Can I do this through PowerShell?
Is there anyway to import the pictures from AD without having to have MySites setup?
I hope you can help me with this error:
Update-SPProfilePhotoStore -CreateThumbnailsForImportedPhotos 1 -MySiteHostLocation https://testmy.XXXXX.nl
Update-SPProfilePhotoStore : The pipeline has been stopped.
At line:6 char:27
+ Update-SPProfilePhotoStore < -createthumbnailsforimportedphotos="" 1="" -mysitehostlocation="" https://testmy.xxxxx.nl="" +="" categoryinfo="" :="" invaliddata:="" (microsoft.offic...ofilephotostore:spcmdletuserprofilephotostore)="" [update-spprofilephotostore],="" pipelinestoppedexception="" +="" fullyqualifiederrorid="" :="" microsoft.office.server.userprofiles.powershell.spcmdletuserprofilephotostore="">
What Am I doing wrong?????
Log on to the App server as the AppFabric Caching Service account and run the script. Should be ok.
I'd also like to know (like Fiona) if there is anyway to import the pictures from AD without having to have MySites setup? Thank you.
Same as Betsy and Fiona, can I import pictures from the AD without setting up MySites?
I've seen several guides similar to this one, but they all indicate that I should have the "thumbnailPhoto" attribute available to select. When I scroll down to where it should be, all I see is a closed and narrow drop down that cannot be opened/selected from. I've tried simply typing in the attribute name in the text box that's there and adding that mapping, but still no joy. I'm following all of the steps I've seen and am using the SharePoint Active Directory import. I've checked rights, I've ran the PS script, ran the sync, checked to make sure the attribute exists in AD and is being populated and I still can't see the user pics. Can anyone point me to where I may be doing something wrong??