Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have a SharePoint list whose items are created by members of a group of ~700 people. The content of these list items needs to evolve over time but we need to limit edit privileges so that only valid changes are made. Bottom line, this means that our permissions are set up so that only the creator of a list item can change it.

Problem with this is that occasionally list item creators leave the company or change roles and we need to re-assign editing privileges to another individual. In other cases, we would like to grant editing privileges to several people instead of just the creator. Is there any way to change the "created by" field on a list item so that a new person can become the editor? Even better, is there some way to set up the list so that edit privileges are can be granted to a short list of people in addition to the creator? Finally, is there some more clever solution than using "created by" to determine who the editor is?

Thanks in advance for the help.

P.S. We're on SharePoint 2010 and will be migrating to SharePoint 2013 in 8-10 months.

share|improve this question

3 Answers 3

I think there is a better alternative to what you want to achieve, using groups.

First, go to the List's Permission settings (you will find it on the ribbon) and press the Stop Inheriting Permissions button. Then select every group and every user you see there, and click the Remove User Permissions button.

Next, go to Site Actions -> Site Permissions and click create Group. We will create two groups here: one for readers and one for the editors. For the names put something like "ListName Readers" and "ListName Editors". Owner of the group should be the "SiteCollectionName Owner" group. The rest you should leave like that.

After you have created the groups, go back to the permission page of the list. There, you should add "Readers" group with the Grant Permissions button. Add your "Readers" group in the User/Groups box and select only the Read checkbox from the Grant Permissions part. Add also your "Editors" group, but select the Contribute checkbox for them.

Now, if you click on your "Readers" group, you can put here and AD group or individual users, you want to give read access of your list. You can use for example the NT AUTHORITY\authenticated users which will grant read access to anybody who has an AD account on your intranet. And you can also edit the "Editors" group and add the few people you want to have editor rights on your list items.

You will have to disable any rule you had regarding the CreatedBy field. Probably by going to the list settings, Advanced settings, and under Create and Edit access select Create and Edit all items.

I am really curious how do you find this solution.

Cheers!

share|improve this answer
    
That doesn't solve his problem, since which ever users are in Editors group can edit any of the document in the library... He is looking for List Item permissions! –  Arsalan Adam Khatri Dec 12 '12 at 18:15
    
Interesting - and thanks much. In my situation, though, there is no small group of editors. Everyone is an editor, but only for the list items they themselves have contributed. The list is dynamic and there's no way for me to build an admin function that would manually set up permissions. –  user13596 Dec 12 '12 at 18:19
    
Yes, I am sorry, I didn't understand your question completely. Now I do, and probably there is no more clever solution for this, than using the Created By field to filter out who the editor can be. I wouldn't go for List Item based Permissions, because as far as I read on the Internet, for large lists (and I believe yours has more than 700 lines, right?) is pretty slow and hard to maintain. –  Norbert Dec 13 '12 at 8:34

Easy way of doing is create a Workflow which sets List Item based Permissions to the person who created the document... If the person leaves and you need to change the permissions, you can change permissions next time through UI...

Also, make sure you keep the Administrator account Contribute permissions too for the List Item...

Refer to following:
SharePoint 2010 - Configuring List Item Permissions with Workflow

Also see this thread for more ideas on List Item based Permissions

share|improve this answer

I would suggest, instead of setting List Item based permissions (which slows down pretty much your list, as far as I read) stay with the current setup and give editing rights only to the creator of the item. You can define a small group of global editors, who will be able to edit any item, not just theirs, by giving them the Manage List permission. Unfortunately they will have other rights too on the list, I don't know it that is acceptable or not.

I would also add a field to the list (if it's not already there), something like "Owner", which would be an SPUser field. Then I would add an event receiver on ItemUpdating, with the following logic:

  • IF currentUser != userInCreadetBy AND ownerFieldHasBeenModified THEN Set Created By to Owner.
  • IF ownerIsEmpty THEN Set Owner to be the Creator
  • IF currentUser == userInCreatedBy AND ownerFieldHasBeenModified THEN Discard changes to the Owner field.

So, when the Owner (and also the editor) of an item has to be changed, a person with ManageList permissions will have to edit the item and change the Owner field. Only these persons should be able to make these changes, and if the regular editor tries to change the Owner, his changes should be discarded.

What do you think about this approach?

share|improve this answer
    
Interesting approach. I've taken it to my team and they are studying. Hope it works! –  user13596 Jan 28 '13 at 16:36
    
Please let me know it it worked. –  Norbert Feb 5 '13 at 21:42

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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