0

Just as a note, I am pretty new to SharePoint. At the moment I am creating a SharePoint(2010) list and I need to assign permissions. The task seems easy, I have to allow a member to see only a file they are assigned and upload their own file (as an answer to it) which I can do by managing item permissions.

The issue is, there is about 500 items/members that would need that kind of permission. My question is, how can I automate this and as stated above let each member see only the file they are assigned and create their own which can be seen only by them as well?

If this is any help, files can be uniquely named (for example with a members surname).

3 Answers 3

2

You can create a view with the below filter options,

  1. Assigned To is equal to [ME]

OR

  1. Created By is equal to [ME]

So in this view, only the items in which the current logged in user is in "Assigned To" column or "Created By" column will only be displayed. This is a simple way to display item in which current logged in user is related to. There is another drawback too, if I know other items ID, then I can use them in the URL and access that item.

6
  • Thanks for your input. This solution seems easy, but because of no security (and there's going to be some confidential data), I am pretty sure I can't use it. I am guessing there is no way to restrict the current view to be the only view for given member?
    – Coexxister
    Dec 9, 2019 at 12:14
  • How many views you have for that list ? Dec 9, 2019 at 12:17
  • I'm guessing I would need one view per member, since they can only see their own files and the one that was assigned to them
    – Coexxister
    Dec 9, 2019 at 12:28
  • No, you need not have one view per member, just those filters is sufficient. It will filter the items based on the current logged in user and displays only the items related to them, Dec 9, 2019 at 14:52
  • Okay, but that still has the drawback of a slim chance that another member can access what they shouldn't by having item ID, correct? Is there any way of restricting that?
    – Coexxister
    Dec 9, 2019 at 14:56
1

First of all create one Person or Group Field in your list (If you don't have it), say you named it Assigned To.

As you are using SharePoint 2010, you can create a SharePoint designer 2010 workflow and use Replace List Item Permissions action to manage the list item permissions.

Official documentation:

Workflow actions in SharePoint Designer 2010: A quick reference guide - Check Actions available within an impersonation step section.

Note:

  1. It is recommended to first use impersonation step to get elevated privileges and then add the "Replace List Item Permissions" action inside of it.
  2. Using "Replace List Item Permissions" give the permission to the user added in Assigned To field and additionally site collection administrator or site owner for a safe side so that there will not be any problem if only one person (Assigned To) is having permissions on list item.

Update:

  1. Create a column in a SharePoint list or library.
  2. SharePoint workflow list item permission.
4
  • Thanks for the response. I am not sure if I understand it correctly (might be a stupid question to be honest), does it mean that I basically create a 'dummy' person and populate from there on each member right? Would it work as if I had variable taken from file name and then matched it with members name?
    – Coexxister
    Dec 9, 2019 at 12:12
  • You can create a new column/field in your SharePoint list which will have the data type of "Person or Group". Whenever you create a list item you can assign that item to the specific person in newly create person or group field. And the same column you can use in your workflow to assign the item level permissions to that particular person only to whom you have added in this field. Dec 9, 2019 at 12:21
  • Check links given in update section in my answer above. Dec 9, 2019 at 12:27
  • List item permissions are not a great idea, and can cause issues later depending on how many users you have assigned to the list. Each list item will fill a permissions page that will account for each user who does not have access to the files as "Limited Access" on each item. This will fill the permissions list behind the list you are giving item level permissions too and cause performance issues. karthik-jaganathan is a better option.
    – lazoDev
    Dec 9, 2019 at 13:06
0

You can use Audience Targeting to hide the other views. This will allow you to create views where you can use meta data in the list to hide list items only viewed by certain users. This includes attachments and Document Library options as well. Create security groups for the List/Library, and use those to set up your target audiences. This will help with the other views you have not using the [Me] filter as listed above.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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