Scenario: Mapping the User Profile property "PictureURL" is not a straight forward process in SharePoint 2010. In our case, we needed to map this property to the attribute extensionAttribute3. It is not a straight forward process like the procedure we generally follow to set any other property mapping because the attribute "extensionAttribute3" does not exist in the list of mappable attributes. We had to follow the same procedure whenever we could not find the desired attribute in the list of mappable attributes.
Resolution:In order to setup the mapping, use Forefront Synchronization Service Manager. (It is found at \Program Files\Microsoft Office Servers\14.0\Synchronization Service\UIShell\ miisclient.exe)
Navigate to Metaverse Designer and choose person in the list below:
If extensionAttribute3 is not found in the list of available attributes, click on “Add Attribute” that appears as one of the actions in the right hand pane. If it does not appear in the available attributes list, click the “New Attribute” button.
Make sure that “Indexed” is checked and type in the value “extensionAttribute3” for the Attribute Name. Now we need to setup the Attribute Flow. In order to do that, navigate to “Management Agents” tab
Choose the desired “Active Directory Domain Service Agent” (MOSSAD-ACTIVE DIRECTORY) and navigate to its properties. Navigate to “Select Attributes” section. If you don’t see extensionAttribute3 in the list, check “Show All” and you will see the extensionAttribute3 in the list. Make sure that it is checked.
Navigate to “Configure Attribute Flow” and setup attribute flow as below:
Now choose the Extensible Connectivity Agent (MOSS-64c01ea7-862d-4c64-969d-8e5e52457cdb) Navigate to Properties > Configure Attributes. If “PictureURL” is not found in the list of attributes, add it by clicking on “New”.
Navigate to “Define Object Types”. If you don’t see the “PictureURL” attribute in the list, click on “Edit” and then add “PictureURL” from the list of available attributes to the list of “May have attributes”
Navigate to “Configure Attribute Flow” and setup mapping as below:
Now you should be able to see that the Picture attribute is mapped to extensionAttribute3 in the “Edit Profile Property” UI screen.
Thanks a lot to our Practice Lead David Perkinson for all the help he offered me while setting up the search configuration.
ICF Ironworks is always on the lookout for experienced professionals who believe in hard work, having fun, and great client service.
If you would like to synchronize the user profile photo (not the URL only but the binary image) to and from the thumbnailPhoto Active Directory property, you might find the following link useful:
Synchronizing user image between Active Directory and SharePoint profile
http://pholpar.wordpress.com/2010/08/10/synchronizing-user-image-between-active-directory-and-sharepoint-profile/
Posted by: Chaitu Madala | 08/10/2010 at 08:48 AM
Hi,
Instead of using the "extensionAttribute3" attribute, I've mapped the pictureURL to a "BDC - WCF webservice" (string attribute) with the same procedure as you explained in your configuration setup. The pictureURL points now to an external SSL-url (https://externservername/.../user.jpg). The user picture appears well in the user profile properties on the "Edit user profile property page" and on the "user profile page"; But when looking to the Organization Chart with Silverlight the pictures won't appear.
When I do a manually uploads of the same SSL urls, the pictures appear in the Organization Chart.
Is there a restriction for Silverlight to show SSL urls or am I missing a step?
It seems when you do a manually upload of the picture, it stores the picture in 3 different size in the Photos Library of the Mysite sitecollection. This is not the case when mapping the PictureURL to the url, no pictures are uploaded into the Photos Library.
Chris.
Posted by: Chris Verbeke | 09/10/2011 at 04:03 PM
look for this PowerShell command:
Update-SPProfilePhotoStore
Posted by: Charles Fiset | 09/22/2011 at 09:23 AM
Do note (and take care): it is not supported by Microsoft to make changes in forefront manually. Doing this puts you into an unsupported state.
Posted by: Jeroen | 01/09/2012 at 08:21 AM