Wednesday, April 7, 2010

Hide 'My Site' and 'My Links' links

I have searched about this particular issue a lot. And all of the results guide me as to how to hide the link either using CSS or changing the master page in SPD. Bottom-line there has to be some customization to achieve this.

However I always wondered if I have not allowed the users to create 'My Sites' (self-site creation disabled) then why should SharePoint show the 'My Site' link. There has to be a direct/simple solution to fix this.

I just stumbled upon the solution a few days back and its a simple permission setting. Here is how to do it.
  1. Open SSP Home
  2. Click 'Personalization Service Permission' link
  3. Click 'NT_AUTHORITY\Authenticated Users' (will hide link for all users in the farm)
  4. Uncheck 'Create personal site' permission. This will hide the 'My Site' link
  5. Uncheck 'Use personal features' permission. This will hide 'My Links' link
  6. Save
Thats it. The link won't show any more and users wont get the ugly error regading contacting admin blah blah.. when they click it accidently.

Now as this is a permission related setting we can allow selective users to create their 'My Site' while all others can not. Just create/use a AD group and add the relevant permissions to it. So now you can allow the Sales people to create My Sites while all others in your farm can not.

Hope this helps.

Friday, April 2, 2010

Clicking user-name behavior inconsistent: shows userdisp.aspx OR person.aspx

Today I noticed that clicking on certain user-names takes me to their profile page (personal/person.aspx) while the simple _layouts/userdisp.aspx page was shown for remaining users. Why should SharePoint behave differently for the same action?

A quick look at 'User Profiles and Properties' page in the SSP Home revealed the reason. It happened so that all the users were not imported from AD. So for user profiles that were imported and diplayed on 'View User Profiles' page in SSP, clicking their name in SharePoint site displayed their profile page. And for the users who were not imported and hence not displayed on 'View User Profiles' page in SSP, clicking their name simply shows the _layouts/userdisp.aspx page.

Running a full-import for the user-profiles fixed the inconsistency and clicking on any users name now displays his/her profile page.

One of our customers requested to show only the simple _layouts/userdisp.aspx page instead of a full blown profile page for all users. To achieve this we just deleted all the imported profiles and disabled the import schedules.