0

I have a list where security inheritance is not enabled.

On adding an item to a list in the ItemAdded event receiver I'm applying custom security to the list item.

The consequence of doing this is it adds the username to the root site permissions with "Limited Access"

I realise from this question why its happening, but given I have control of the site and the security groups etc... is there a group or something I can do or create to stop it happening?

The user in question is already in a custom group and that group has amongst other things the "Limited Access" applied. So I would have thought this should stop it from happening but it doesn't appear to.

2

Anytime you add a user directly to a subweb/list/folder/item SharePoint will add this user at the root with Limited Access in order to ensure that the user will have access to "Support files" like master pages, ...

You could argue that this isn't needed if the user already has access by being in a group, but then SharePoint would have to check if it needed to add the limited access every time you remove a user from a group. It doesn't want to make this check.

As @AndersAune mentions you can get rid of the Limited Access by using AddToCurrentScopeOnly instead of Add when you modify your SPRoleAssignmentCollection, but you should only do that if you're sure they'll have access to the "Support files" through some other mean.

  • Interesting, I thought you could "skip" the Limited Access with AddToCurrentScopeOnly(), but haven't used that for some time now, so can't be sure :) – Anders Aune Oct 24 '13 at 7:33
  • @AndersAune Haven't used that, but it seems you're right. You should add your own answer, so you can get the credit – Per Jakobsen Oct 24 '13 at 7:41
  • Great. Nah, no credit needed. And you have updated your answer with the info :) – Anders Aune Oct 24 '13 at 11:43

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.