Claus on Code

A data dudes random musings about code, bugs, products, life etc.


Show webparts for all users

To my big surprise, sharepoint users, who are only members of custom site groups, can’t see all webparts. This is apparently because the webpart gallery is stored in a list, and the list doesn’t inherit security for the portal.

To enable all users to see all webparts, edit the webpart gallery list, so it inherits security from the portal. That is actually quite hard to do, so here follow an easy walk through 🙂

 Before you start, open your favorite text editor, and do like this. 

  • Open the portal, and go to site settings
  • Click manage security and additional settings
  • Click manage webpart gallery 
  • Click modify settings and columns
  • Look at the the url. It looks something like this: http://Server/_layouts/1033/listedit.aspx?List={GUID}
  • Copy the GUID from the url, and paste it into your open text editor.
  • Open a new browser, and type in the following url, and press enter: http://Server/_layouts/1033/ShrOpt.aspx?obj=GUID,doclib, where server, is your server name, 1033 your language code, and GUID should be the GUID you put into your text editor earlier.
  • On the page that now appears, you can change the security permissions. Click inherit permission from parent web site.

All done. Now all users have access to the webparts, such that it corresponds to the custom sitegroups security settings.

Why it is not implemented like this from the beginning beats me. It could be because of some security reasons. If you are worried about the security, you can now change the permissions for all custom sitegroups to View items. Of course, then users who are only members of custom sitegroups that have been created after these actions, don’t have access to all webparts.

An alternative solution to the problem, could be to add a cross sitegroup to the list with view permissions, and then add all custom sitegroups to this cross site group.



Leave a Reply

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