web
You’re offline. This is a read only version of the page.
close
Skip to main content
Community site session details

Community site session details

Session Id :
Power Apps - Building Power Apps
Suggested answer

SharePoint view permissions

(1) ShareShare
ReportReport
Posted on by 37
I'm not sure if this topic fits into this forum, but I'll try my luck.
I've built a flow which takes daily swipes from a desktop based system and imports them into a SharePoint list.  There will be one record per day per colleague, so approx 800 records per day. So it will be around 4000 records per week (taking into account days off).  Each record which is imported is linked to a lookup list which contains each individuals line manager.  What I was hoping to do is create a list view per department and limit access to managers within that department, however after some research it appears it's not possible to have View level permissions.  My next thought is to assign item level permission to each record, giving only access to each individuals line manager.  However, I believe anything over 3000 records of item level permissions can hamper performance.  I'd only need 2 weeks worth of data at a time, before it gets archived, but this is still 8000 records in the system at any one time.
 
What are people's thoughts on the best way to proceed please?
Categories:
I have the same question (0)
  • Suggested answer
    wolenberg_ Profile Picture
    506 Moderator on at
    SharePoint view permissions
    Hello @RS-29010719-0 , You're right that SharePoint doesn’t support view-level permissions, and item-level permissions beyond ~5,000 unique scopes can severely impact performance. The best approach is to use filtered views with audience targeting or folder-based security, combined with archiving strategies to keep the list lean.
     
    Recommended Strategy for Managing Departmental Access
     
    1. Use Folder-Based Permissions
    Instead of assigning permissions per item, organize your list into folders per department:
    •  Create folders like HR, Finance, Operations, etc.
    •  Set unique permissions on each folder for relevant managers
    •  Use Power Automate to route incoming records into the correct folder based on department
    This reduces the number of unique permission scopes and improves performance.
     
    2. Use Audience Targeting with Modern Views
    If you're using SharePoint Online, enable audience targeting:
    •  Create views filtered by department
    •  Enable audience targeting on the list and views
    •  Assign Microsoft 365 groups or security groups to each audience
    This doesn’t restrict access but hides irrelevant data, improving usability.
     
    3. Archive Older Records
    To keep the list performant:
    •  Use Power Automate to move records older than 2 weeks to an archive list or document library
    •  Archive lists can have relaxed permissions or be read-only
    This keeps your active list under the 3,000–5,000 item threshold.
     
    Summary
    •  Avoid item-level permissions for large lists
    •  Use folders with unique permissions or audience-targeted views
    •  Archive old records to keep the list lean
    •  Consider Power Apps for dynamic filtering and access control
     
     
    If this helped or could help others in the community, feel free to give it a like or kudo — it helps surface useful answers for everyone!
     
     
  • WarrenBelz Profile Picture
    151,135 Most Valuable Professional on at
    SharePoint view permissions
    I am not sure whether your question is about the Power Apps (the focus of this forum) or SharePoint view capability. If you are talking about SharePoint, then go with what @wolenberg_ has posted.
     
    If Power Apps, you can certainly filter any number of records based on Single Line of Text fields such as Department and whether the user is a Manager. You can also make these in View Mode (read only)  if you wish As an example, if you had a reference list with the Manager's Email, Department and a Text field Yes or No if a manager. At App OnStart
    Set(
       gblUser,
       LookUp(
          ReferenceList,
          EmailAddress = User().Email
       )
    )
    You would then navigate to the view only if
    gblUser.IsManager = "Yes"
    Then the Gallery Filter
    Filter(
       YourMainList,
       Department = gblUser.Department
    )
    If you only wanted two weeks of data, you would put this also at App OnStart
    Set(
      gbl2Weeks,
      Today() - 14
    )
    and then your Filter
    Filter(
       YourMainList,
       Department = gblUser.Department &&
       Created >= gbl2Weeks
    )
    Although I mentioned any sized list, for performance reasons it is better to keep SP record numbers under 100- 150k (you can do less if you want), so probably archive anything over a year old.
     
    Please Does this answer your question if my post helped you solve your issue. This will help others find it more readily. It also closes the item. If the content was useful in other ways, please consider answering Yes to Was this reply helpful?
    Visit my blog
    Practical Power Apps    LinkedIn  
     
     
  • RS-29010719-0 Profile Picture
    37 on at
    SharePoint view permissions
    Many thanks for the advice.  I'm a bit unsure about the first section 'Folder-based permissions'.  Currently all the data is dropping into 1 SharePoint list.  Are you saying I'd have to create multiple lists, each one within it's own folder?
  • Suggested answer
    wolenberg_ Profile Picture
    506 Moderator on at
    SharePoint view permissions
    Hello,
     
    In a SharePoint list, you can create folders just like in a document library. Each folder acts as a container for list items, and you can assign unique permissions to each folder.
    So instead of creating separate lists for each department, you:
    •  Create folders like Finance, HR, IT, etc. inside your existing list
    •  Set folder-level permissions so only relevant managers can access their department’s folder
    •  Use Power Automate to route incoming records into the correct folder based on department
     
    How to Set It Up
     
    1. Enable Folders in Your List
    •  Go to your SharePoint list settings
    •  Under Advanced settings, set “Make ‘New Folder’ command available” to Yes
    2. Create Folders for Each Department
    •  In the list view, click New > Folder
    •  Name folders by department (e.g., Operations, Sales, HR)
    3. Assign Unique Permissions
    •  Click the folder’s ⋮ > Manage Access
    •  Stop inheriting permissions
    •  Grant access only to the relevant managers or groups
    4. Route Items with Power Automate
    •  In your flow, use the Create item action
    •  Specify the folder path in the Folder Path field (e.g., Finance/)
     
     

    Let me know if you’d like help building the folder-routing flow or setting up permissions. And if this helped or could help others in the community, feel free to give it a like or kudo — it helps surface useful answers for everyone!


     
  • RS-29010719-0 Profile Picture
    37 on at
    SharePoint view permissions
    That's great.  I've set up 3 folders so far for testing & get myself familiar with working with folders.
    When I've create them I just get blank rows, with a folder symbol at the end.  Is this correct?  How would users identify which folder they're clicking into?
     
  • RS-29010719-0 Profile Picture
    37 on at
    SharePoint view permissions
    I've found how to display the folder title by showing the title.
    My first question about this method is - I was going to create a daily automation to email individual managers any swipe exceptions.  Will it be possible for me to do this as a whole for the full SP list, or will I now have to create a separate flow for each folder within the list?
     
  • RS-29010719-0 Profile Picture
    37 on at
    SharePoint view permissions
    Thank you for your help with this.  I've now set up 6 folders with individual permissions, so I'm now going to have to change my flow to get the data into the correct folders.  Below is my flow.  Essentially it brings in a spreadsheet, checks the existing records in the SP list, then decides if the record exists (if so update it) or if it's new (if so create a new record).  I can change my import spreadsheet to include the department name to match the department folders I've created in the list.
     
    I have a few questions:
    • When I'm checking if the item exists (Get Items) can I look at the list globally as opposed to looking in each folder individually?
    • When the flow moves past the condition to either add new or update, do I need to do 6 conditions depending on which folder the record should be moving to?  Or is there a quicker way to do that?
    • How do I reference the folders within the flow, so the data drops into the correct folder?
     
     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Tom Macfarlan – Community Spotlight

We are honored to recognize Tom Macfarlan as our Community Spotlight for October…

Leaderboard > Power Apps

#1
WarrenBelz Profile Picture

WarrenBelz 839 Most Valuable Professional

#2
developerAJ Profile Picture

developerAJ 489

#3
Michael E. Gernaey Profile Picture

Michael E. Gernaey 397 Super User 2025 Season 2

Last 30 days Overall leaderboard