PowerShell: How to Stop Inheriting Permissions in SharePoint Lists

In this article, we’ll show you how to break permissions in SharePoint lists with the following requirements:

  • Allow the user to input the Site URL and List Name as needed
  • Break permission for the list if it contains permission inheritance
  • Remove all users from the list but retain the permissions of items Created By
  • Remove all groups from the list but retain Home Owners and Home Members Group
  • Break permission for Items
  • Retain the permissions of items Created By
  • Add Owners group to all items

Allow the user to input the Site URL and List Name as needed

The script below allows the user to input the Site URL containing some special characters (e.g. %20 instead of space).

The script below allows the user to input the List Name required.

Break permission for the list if it contains permission inheritance

First, check to see whether or not the list contains permission inheritance.

Remove all users from the list but retain the permissions of items Created By

Remove all groups from the list but retain Home Owners and Home Members Group

Break permission for Items

Retain the permissions of items Created By

Add Owners group to all items

How does it work?

Download the StopInheritingPermissions.ps1 file to your server.

Let’s create a SharePoint list on your site. In this example, I’ll create a My List with Tasks list type. And I’ll also create items with different account names.

Make sure the list contains permission inheritance.

Run the PowerShell script with the parameters.

Check the results on your list. Make sure the requirements above are included.

Permissions for this list

Permissions for Item