Overview of My SharePoint Sites and how the data is populated
SharePoint gives you the ability to get a list of sites that your login account is explicitly a member of. This grouping of links is built on the server-side by the Profile Synchronization timer job that runs for each Web Application. The data is stored in the SSP database and is visible in the following locations:
SharePoint Web UI
- Under your My Site by clicking the Memberships link
- From the My Links menu next to the "Welcome LoginName" link. Once you have informaiton in the Memberships view of the My Site, there will be a menu item added named My SharePoint Sites. Hovering over this menu item will show you all the links from your My Site, Memberships view.
Client machines
- These links are available on client machines in the Office Open/Save As dialog box as well.
You can run into various issues in which these links are not populated, or once populated are no longer cleaned up. I wanted to provide some information on how SharePoint determines which links to add to the Memberships view as well as provide some information about how the Office client knows which links to show. This should give some ideas for isolating and troubleshooting these issues. For this example, we'll setup a Site Collection at https://companyportal/sites/Home.
When you create the Site Collection, there are three SharePoint Groups created. Home Viewers, Home Members, and Home Owners. These three SharePoint Groups are designated as the Viewers, Members, and Owners groups for the site. You can validate that these groups are setup and have permissions to the site by following these steps:
Browse the Site collection
Click Site Actions | Site Settings
People and Groups
Settings menu | Set Up Groups. You'll see which SharePoint Groups are designated as Visitors, Members, and Owner
I'll be posting another blog on a scenario in which these groups can cause links to display in My SharePoint Links when you no longer have access to the site.
The Profile Synchronization timer job runs every hour and reads users that are explicitly added to the SharePoint Group listed as the Members group. In this case, users that are explicitly added to Home Members. A link to the Home site is added to the Memberships list in the My Site. The user's login account has to be explicitly added to the Members group as the job does not expand domain groups. It's also important to note that the user has to be in the Members group...being in the Owners group will not add the link.
- For a common scenario that can cause the Profile Synchronization job to not pick up your sites, check out this blog:
https://blogs.msdn.com/toddca/archive/2009/01/30/preparetomove-away-from-running-this-command.aspx - This issue will also cause the synchronization to fail:
https://support.microsoft.com/kb/962928
- For a common scenario that can cause the Profile Synchronization job to not pick up your sites, check out this blog:
At this point the My SharePoint Sites menu item will show up under the My Links menu.
When you open an Office client that is SharePoint aware (2003 and 2007), and you have configured a My Site on the client, a call is made to the GetLinks method of the following web service: /personal/<user>/_vti_bin/publishedlinksservice.asmx
This call by default occurs once a day.
The response of the web service call is the items from your My Site's Memberships data.
The timestamp of the sync is stored in the following registry key. If you delete this registry key, the Office client will sync with the server the next time the Open/Save As Dialog is displayed.
- HKEY_Current_User\Software\Microsoft\Office\12.0\Common\Portal\LinkPublishingTimestamp
The Membership data returned is used to create a Network Places under your local profile at:
- DRIVE:\Documents and Settings\<LoginName>\Local Settings\Application Data\Microsoft\OFFICE\My SharePoint Sites
Office also creates a registry key for each link that stores the meta data that came down from the web service call at:
- HKEY_Current_User\Software\Microsoft\Office\12.0\Common\Server Links
The information is then displayed in the Open/Save As dialog under My SharePoint Sites
To reset everyone's Memberships links on the server side: [Word of caution...if the sync is failing for whatever reason, the links will remain empty until that is fixed...in other words, don't randomly run these steps.]
- Run: Stsadm.exe -o Sync -DeleteOldDatabases 0
- All the Memberships information for all users should be cleared out.
- Wait for the Profile Synchronization Timer Job to fire.
To reset your My SharePoint Links on the client side: [Same warning as above...if the web service call to the My Site fails, these links will not be repopulated until that connection is established.]
Clear out the Network Places and Shortcuts under:
DRIVE:\Documents and Settings\<LoginName>\Local Settings\Application Data\Microsoft\OFFICE\My SharePoint Sites
Delete the following registry keys:
HKEY_Current_User\Software\Microsoft\Office\12.0\Common\Server Links
HKEY_Current_User\Software\Microsoft\Office\12.0\Common\Portal\LinkPublishingTimestampOpen an Office client, and open the Open File Dialog
Click My SharePoint Sites and the links should repopulate. May take 30-60 seconds since the web service call has to complete and the links have to be generated.
Update: 06/30/2010 - fixed publishedlinksservice.asmx mentioned in comments. The ASMX file was missing some characters. Thanks for the feedback!
Comments
Anonymous
February 18, 2010
The comment has been removedAnonymous
February 18, 2010
Nice Post man. This has been troubling me for a while.Anonymous
March 01, 2010
Thank you for very much for this information. We are considering changing our security model so that users are explicitly listed in the SharePoint Members group (vs. applying an Active Directory group w/ the users)... primarily to gain this "My SharePoint Sites" functionality. Do you know if "My SharePoint Sites" continues to work the same way (i.e., a site where the user is explicitly named in its Members group will automatically show up in "My SharePoint Sites") in SharePoint 2010?Anonymous
March 01, 2010
@RobRoach - not sure. If users are actually creating the shortcuts from the client (like opening an HTTP address in SharePoint Designer or typing in the URL in Open/SaveAs dialog) that would cause that. If I get free time to look into that, I'll post the results. @libbyrome - Took a quick look and at first glance that does appear to be the same situation for SharePoint 2010. I didn't get any sites in Memberships until I explicitly added my account to the Members group for the site.Anonymous
May 06, 2010
Hi, Anyone know the reason why some of the links in My SharePoint sites of open/save file dialog are displayed (i.e. the icons shown) as classic folders and some are displayed as a 'network place'? Thanks in advance.Anonymous
June 01, 2010
The /_vti_bin/publishlinksservice.asmx in the article should be /_vti_bin/publishedlinksservice.asmx :-)Anonymous
June 01, 2010
The /_vti_bin/publishlinksservice.asmx in the article should be /_vti_bin/publishedlinksservice.asmx :-)Anonymous
June 06, 2010
Hi, also, some of the folders in My SharePoint Sites are empty. No clue why they are shown as empty folders. Any ideas!!!Anonymous
November 28, 2010
The comment has been removedAnonymous
March 14, 2012
The comment has been removedAnonymous
June 03, 2013
Hai this is suresh i have an issue if it is possible to Get the Data located in Mysite i.e. My Profile Information.if it is possible please share me any information related to this. Thanks, Suresh