SharePoint implements permission inheritance at every level. It means that the permission of the parent is inherited by the child element. Let's say, if the user has the permission to access a site then each list within the site can also be accessed by the same user as the list inherits permission from Site Parent. However, it is not possible in every business scenario. There would be the requirement where we have to assign a unique permission to a child object so that only specific users can access the sensitive contents within the child.

We can break the inheritance out of the box from the permissions page by following the steps, listed below:

JavaScript Object Model Implementation

Reset Permission Inheritance

Now, we can reset the inheritance, so that the object inherits permission from its parent object using resetRoleInheritance method. as shown below:

  1. var clientContext = new SP.ClientContext.get_current();
  2. var oList = clientContext.get_web().get_lists().getByTitle('DemoList');
  3. //Reset inheritence
  4. oList.resetRoleInheritance();
method

We can test this in SharePoint, by adding it to the Content Editor Web part, as shown below: Thus, we have seen how to break the permission inheritance as well as how to restore the inheritance with the help of this article. In order to see how it’s done using REST, refe to this article.