How to set folder permissions in Active Directory

Last updated on:

Controlling who can open, change, or take ownership of a shared folder is one of the most common security tasks in a Windows environment. Folder access is governed by NTFS permissions, which define the access rights assigned to files and folders on an NTFS volume. In an Active Directory (AD) domain, these permissions are typically assigned to security groups rather than individual users to simplify access management.

You can set these permissions through the Windows Security tab, the Set-Acl cmdlet in PowerShell, or ManageEngine ADManager Plus. This guide walks through all three methods, how NTFS permissions and security groups work together, how inheritance flows from parent folders to child items, and how to apply the principle of least privilege so users get only the access they need.

Understanding folder permissions in AD

Before you set permissions, it helps to understand the following concepts:

NTFS permissions and the ACL

NTFS permissions are the access rules Windows stores on each file and folder, deciding who can read, write, modify, or take ownership of it. Every folder holds them in an access control list (ACL), where each entry pairs a user or security group with a permission level. The six standard levels are Full control, Modify, Read & execute, List folder contents, Read, and Write, built from finer-grained special permissions underneath. An ACL can also hold Deny entries, too. This overrides an Allow entry, so Deny entries are best used sparingly, granting access only to the groups that need it.

Security groups and the AGDLP model

Assigning permissions to individual users doesn't scale, so the practice in AD is to grant permissions to security groups and control access through membership. The accounts, global groups, domain local groups, and permissions (AGDLP) model formalizes this: User accounts go into global role groups, those go into domain local resource groups, and the NTFS permission is assigned to the domain local group. This keeps ACLs role-based and easy to maintain as people change roles.

Permission inheritance

Permissions flow from a parent folder down to its subfolders and files through inheritance, so a permission set at the top of a folder tree applies throughout it. A permission set directly on a folder is explicit; one flowing down from a parent is inherited, and explicit permissions take precedence. Inherited entries appear grayed out on the Security tab. To give a folder permissions that differ from its parent, you disable inheritance on it.

The principle of least privilege

The principle of least privilege means granting each group only the access it needs and nothing more. In practice, start from no access and add specific permissions for the groups that require them, rather than granting broad access and trimming it later. A finance analyst who only reads reports requires Read & execute, not Modify; only the managers who maintain the reports require Modify. Reviewing permissions periodically and removing access that is no longer needed keeps a folder aligned with the principle of least privilege.

Prerequisites

Before changing a folder's permissions, ensure that:

  • Your account owns the folder or has the Change permissions special permission, which is included in Full control.
  • The security group you want to grant access to already exists in AD.
  • You are signed in with an account that meets these requirements.
  • PowerShell
  • Security tab
  • ADManager Plus
  • Why ADManager Plus
  • FAQs
 

Setting folder permissions using PowerShell

When you need to script permission changes or apply the same access across many folders, PowerShell's Set-Acl cmdlet writes NTFS permissions from the command line. The pattern is to read the folder's current ACL with Get-Acl, build a new access rule, add it to the ACL, and write it back.

The following example grants the Sales security group Modify access to a shared folder. Run PowerShell as an administrator on a machine that can reach the file server:

$acl = Get-Acl "\\fs1\shared\sales"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule(
"CORP\Sales","Modify","ContainerInherit,ObjectInherit","None","Allow")
$acl.SetAccessRule($rule)
Set-Acl -Path "\\fs1\shared\sales" -AclObject $acl

The FileSystemAccessRule takes the identity (the group in the DOMAIN\Group form), the permission level, the inheritance flags, the propagation flags, and whether the rule is an Allow or a Deny entry. The ContainerInherit and ObjectInherit flags apply the permission to subfolders and files, which is what you want in most cases.

To remove a group's access instead of adding it, build the same rule and call RemoveAccessRule before writing the ACL back:

$acl = Get-Acl "\\fs1\shared\sales"
$rule = New-Object System.Security.AccessControl.FileSystemAccessRule(
"CORP\Sales","Modify","ContainerInherit,ObjectInherit","None","Allow")
$acl.RemoveAccessRule($rule)
Set-Acl -Path "\\fs1\shared\sales" -AclObject $acl

Break inheritance, keeping the existing permissions as explicit entries

Sometimes a folder needs permissions that differ from its parent's, such as a restricted subfolder inside an otherwise open share. To break inheritance while keeping the existing permissions as explicit entries (the safe default, equivalent to the GUI's Convert inherited permissions into explicit permissions on this object), set protection with the second argument left as $true:

$acl = Get-Acl "\\fs1\shared\sales"
$acl.SetAccessRuleProtection($true, $true)
Set-Acl -Path "\\fs1\shared\sales" -AclObject $acl

Break inheritance and remove the inherited permissions

This is equivalent to Remove all inherited permissions from this object, leaving only explicit entries:

$acl = Get-Acl "\\fs1\shared\sales"
$acl.SetAccessRuleProtection($true, $false)
Set-Acl -Path "\\fs1\shared\sales" -AclObject $acl

Common PowerShell errors

  • Active Directory Domain Services role or module required: The script runs only from a machine that can resolve the domain and reach the file server; on a domain controller, the tools are present by default.
  • Identity not found: The group name in the access rule must be a valid DOMAIN\Group value. A typo or a group that doesn't exist throws an error when the rule is created.
  • Missing inheritance flags: Omitting ContainerInherit,ObjectInherit applies the permission to the folder alone, so subfolders and files don't receive it. Include both flags to propagate access.
  • Access denied on Set-Acl: The account writing the ACL requires ownership of or the Change permissions right on the folder.

Limitations of PowerShell

  • Scripting knowledge requirement: Building access rules, inheritance flags, and loops for multiple folders requires familiarity with PowerShell.
  • No built-in reporting: Seeing who has access to what across many folders means writing and maintaining additional scripts.
  • No delegation: Letting help desk staff set permissions safely, scoped to certain folders, requires building and securing wrapper scripts.
  • Error-prone syntax: A wrong identity, a missing flag, or a mistyped path is easy to introduce and hard to spot in a long script.

Supported parameters

The parameters and objects below are used for folder permission tasks in PowerShell:

Parameter or object Description
Get-Acl Reads the current ACL of a folder so it can be modified
Set-Acl Writes a modified ACL back to the folder
-Path The folder with permissions being read or set
FileSystemAccessRule The object representing a single permission entry: identity, rights, inheritance, propagation, and Allow or Deny
SetAccessRule Adds or updates an access rule on the ACL
RemoveAccessRule Removes an access rule from the ACL

How to set folder permissions using the Windows Security tab

The Security tab in a folder's Properties dialog box is the native way to view and set NTFS permissions:

  1. Right-click the folder and select Properties.
  2. Open the Security tab. The top box lists the users and groups with access; select any one to see its permission levels below.
  3. Click Edit > Add to grant access to a new group.
  4. In the Select Users, Computers, Service Accounts, or Groups dialog box, type the security group's name, click Check Names to resolve it against the directory, then click OK.
  5. Back on the Security tab, select the group you just added and check the boxes for the permission levels to allow, such as Modify or Read & execute.
  6. Click Apply > OK to save the changes.

To remove access, select the group on the Security tab, click Edit, select the group again, and click Remove. To adjust an existing group's access, change which permission boxes are checked rather than removing and re-adding it.

Disable inheritance and set explicit folder permissions

To set access that the parent won't override, break inheritance on that folder:

  1. Right-click the folder, select Properties, open the Security tab, and click Advanced.
  2. In the Advanced Security Settings dialog box, click Disable inheritance.
  3. Choose how to handle the existing inherited permissions when prompted. Convert inherited permissions into explicit permissions on this object keeps the current access as editable entries on this folder; Remove all inherited permissions from this object clears them so you can start from a clean list.
  4. Add or remove the security groups and permission levels this folder should have, then click Apply > OK.

Converting rather than removing is the safer first choice because it preserves current access while letting you adjust it, whereas removing everything can lock out users (including administrators) if you don't re-add the necessary groups immediately.

How to set folder permissions using ADManager Plus

ADManager Plus is a unified AD, Exchange, and Microsoft 365 management and reporting tool that sets NTFS permissions through a point-and-click console for one folder or many, with no scripting. It manages the folder ACLs and the security group memberships behind them from the same place.

  1. Navigate to Management > File Server Management > Modify Folder Permissions.
  2. Select the folders with the permissions you want to change, then select the user accounts or groups to grant access to.
  3. Choose the permissions to assign, such as Full Control, Modify, or Read, and check your preferred inheritance option.
  4. Click Modify to write the permissions in AD.
Setting folder permissions using ADManager Plus.

How ADManager Plus helps you manage folder permissions

ADManager Plus replaces scripts and repetitive Security tab edits with a single console for AD, Microsoft 365, and Exchange management and reporting.

  • Set and modify NTFS permissions on folders for one group or many (with inheritance options) from a GUI—without scripting.
  • Report on folder access with prebuilt NTFS permission reports and export them in multiple formats for compliance.
  • Delegate permission changes to help desk technicians through role-based, granular permissions scoped to specific folders or OUs, without elevating technicians' native rights.
  • Automate tasks on a schedule or trigger so access stays current as users join, move, and leave.
  • Route changes through approval workflows so permission and group membership requests are reviewed and approved before they take effect, with a full request-and-approval trail.

FAQ

On the folder's Security tab, click Edit > Add, type the security group's name in the object picker, and click Check Names to resolve it against the directory. Select the group, check the permission levels to allow, such as Read & execute or Modify, and click Apply. The group's members will inherit that access through their membership.

The recommended approach is to assign NTFS permissions to security groups and manage access through group membership, following the AGDLP model: User accounts go into global role groups, those go into domain local resource groups, and the folder permission is assigned to the domain local group.

An explicit permission is set directly on a folder; an inherited permission flows down from a parent folder. Explicit permissions take precedence over inherited ones, and inherited entries appear grayed out on the Security tab. To give a folder permissions that differ from its parent, disable inheritance on that folder and set explicit permissions.

Right-click the folder and click Properties > Security > Advanced > Disable inheritance. When prompted, select Convert inherited permissions into explicit permissions on this object to keep the current access as editable entries, or select Remove all inherited permissions from this object to start from an empty list. Converting is the safer option since removing everything can lock out users if the necessary groups aren't re-added.

Set and report on NTFS folder permissions with ADManager Plus

The one-stop solution to Active Directory Management and Reporting
Email Download Link Email the ADManager Plus download link