none
List Item Level Permission - Performance issue & alternate solution RRS feed

  • Question


  • We have a requirement where we use 3 level approval workflow (VS workflow) to approve all the requests raised in the system. There would be around 500 requests get created per month and we need to store these for 3 years( total = 18K)

    As per security requirement

    1) Each Requestor can only see their own requests
    2) Each Approver can view & approve only those requests which has assigned to them
    3) Admin can see all the requests
    4) Search should return those request for which currently logged user has access


    So achive this we have to use item level permission(unique permission) for the Request items as well the task items. But as per one of the MSDN article, we should not use more than 5000 unique permission per list.

    Does anybody have any performance issue using item level permission? Is there better approach available in SharePoint to perform this above functionality instead of using item level permission?

    Thanks,

    Pataz

    Wednesday, April 24, 2013 3:59 AM

Answers

  • As per the MSDN article technet.microsoft.com/en-us/library/cc262813.aspx

    Unique permissions

    As the number of unique permissions in a list increases, performance decreases. You should reconsider any design in which all or most content in a large list must be uniquely secured. The throughput difference for operations on a list between 0 and 1,000 unique permissions is around 20 percent. There is a configurable default of 50,000 unique permissions per list. However, we recommend that you consider lowering this limit to 5,000 unique permissions and for large lists consider using a design that uses as few unique permissions as possible. This will help not only performance, but also manageability."

    So this means recommendation is 5000 not 50K

    • Marked as answer by pataz2013 Friday, May 3, 2013 5:28 AM
    Wednesday, April 24, 2013 8:55 PM

All replies

  • Pataz,

    Unique Permissions Limit for list is 50000  not 5000 and View Threshold is 5000.

    we can change threshold

    go to Application Management --> Manage Web Applications> web application > genaral setting in ribbon

    > resource throttling > u can see the limit 

    After the limit exceed BreakRoleInheritance  will become slow and it will throw memmory exception.

    Refer the following link

    http://social.msdn.microsoft.com/Forums/en-US/sharepointgeneralprevious/thread/86f6c382-bb8f-4232-81b3-357e20bb6697

    Hope this helps

    Thanks

    -Rahul

    Wednesday, April 24, 2013 4:20 AM
  • While the permission limit is 50K (supported) and the view limit can be adjusted, typically you need to look at what you're doing and attempt to identify an alternate solution that does not involve having so many items with unique permissions within a list.

    For example, you could 'archive' items from the active list to an inactive list, and perhaps strip out the permissions.


    SharePoint - Nauplius Applications
    Microsoft SharePoint Server MVP
    MCITP: SharePoint Administrator 2010

    -----------------------
    This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

    Wednesday, April 24, 2013 4:48 AM
    Moderator
  • As per the MSDN article technet.microsoft.com/en-us/library/cc262813.aspx

    Unique permissions

    As the number of unique permissions in a list increases, performance decreases. You should reconsider any design in which all or most content in a large list must be uniquely secured. The throughput difference for operations on a list between 0 and 1,000 unique permissions is around 20 percent. There is a configurable default of 50,000 unique permissions per list. However, we recommend that you consider lowering this limit to 5,000 unique permissions and for large lists consider using a design that uses as few unique permissions as possible. This will help not only performance, but also manageability."

    So this means recommendation is 5000 not 50K

    • Marked as answer by pataz2013 Friday, May 3, 2013 5:28 AM
    Wednesday, April 24, 2013 8:55 PM