From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In computing, cacls and its replacement, icacls, are Microsoft Windows native command line utilities capable of displaying and modifying the security descriptors on folders and files.[1][2] An access control list is a list of permissions for securable object, such as a file or folder, that controls who can access it. The cacls command is also available on ReactOS.


ReactOS-0.4.13 cacls command 667x674.png
The ReactOS cacls command
Developer(s)Microsoft, Thomas Weidenmueller
Initial release1994, 26–27 years ago
Operating systemMicrosoft Windows, ReactOS
LicenseWindows: Proprietary commercial software
ReactOS: GNU Lesser General Public License

The cacls.exe utility is a deprecated command line editor of directory and file security descriptors in Windows NT 3.5 and later operating systems of the Windows NT family.[3] Microsoft has produced the following newer utilities, some also subsequently deprecated, that offer enhancements to support changes introduced with version 3.0 of the NTFS filesystem:

  • xcacls.exe[4][5][6][7] is supported by Windows 2000 and later and adds new features like setting Execute, Delete and Take Ownership permissions
  • xcacls.vbs[8][9]
  • fileacl.exe [10]
  • icacls.exe (included in Windows Server 2003 SP2 and later)[11][12]
  • SubInAcl.exe - Resource Kit utility to set and replace permissions on various type of objects including files, services and registry keys
  • Windows PowerShell (Get-Acl[13] and Set-Acl[14] cmdlets)

The ReactOS version was developed by Thomas Weidenmueller and is licensed under the GNU Lesser General Public License.[15]


Initial release2007, 13–14 years ago
Operating systemMicrosoft Windows
LicenseProprietary commercial software

Stands for Integrity Control Access Control List. Windows Server 2003 Service Pack 2 and later include icacls, an in-box command-line utility that can display, modify, backup and restore ACLs for files and folders, as well as to set integrity levels and ownership in Vista and later versions.[16] It is not a complete replacement for cacls, however. For example, it does not support Security Descriptor Definition Language (SDDL) syntax directly via command line parameters (only via the /restore option).

See also[edit]


  1. ^ "Microsoft DOS cacls command". Computer Hope. Retrieved 24 December 2011.
  2. ^ "CACLS.exe". Retrieved 24 December 2011.
  3. ^
  4. ^ "How to use Xcacls.exe to modify NTFS permissions (Revision: 4.5)". Microsoft Support. Microsoft Corporation. 2 March 2007. Retrieved 24 December 2011.
  5. ^ "Xcacls syntax". Microsoft TechNet. Microsoft Corporation. 28 March 2003. Retrieved 30 October 2012.
  6. ^ "Windows 2000 Resource Kit Tool: Xcacls.exe". Microsoft Download Center. Microsoft Corporation. 15 May 2002. Retrieved 24 December 2011.
  7. ^ "Windows XP Service Pack 2 Support Tools". Microsoft Download Center. Microsoft Corporation. 10 August 2004. Retrieved 24 December 2011.
  8. ^ "How to use Xcacls.vbs to modify NTFS permissions (Revision: 2.4)". Microsoft Support. Microsoft Corporation. 30 October 2006. Retrieved 24 December 2011.
  9. ^ "Extended Change Access Control List Tool (Xcacls)" (2 July 2004). Microsoft Download Center. Microsoft Corporation. Retrieved 24 December 2011. Xcacls.vbs is an unsupported tool that provides additional capabilities not provided with the supported utility, Xcacls.exe.
  10. ^ "FILEACL v3.0.1.6". Microsoft. 2004-03-23. Archived from the original on March 22, 2009.
  11. ^ "The Icacls.exe utility is available for Windows Server 2003 with Service Pack 2 (Revision: 4.0)". Microsoft Support. Microsoft Corporation. 9 October 2011. Retrieved 24 December 2011.
  12. ^ "Icacls". Microsoft TechNet. Microsoft Corporation. 28 September 2007. Retrieved 24 December 2011.
  13. ^ "Get-Acl". Microsoft TechNet. Microsoft Corporation. 21 April 2010. Retrieved 31 October 2012.
  14. ^ "Set-Acl". Microsoft TechNet. Microsoft Corporation. 21 April 2010. Retrieved 31 October 2012.
  15. ^ cacls.c on GitHub
  16. ^ MS-DOS and Windows command line icacls command

Further reading[edit]

External links[edit]