icacls è una utility da riga di comando in ambiente Microsoft Windows, rappresenta un parziale aggiornamento e un rimpiazzo per il comando da console cacls.
L'utility è inclusa in Windows Server 2003 Service Pack 2, Windows Vista e Windows Server 2008. icacls è stato progettato non solo per mostrare e modificare le ACL, ma anche per effettuare operazioni di backup e restore di tutto o parte di ACL per file e directory. Ciononostante non si può affermare che sia un completo sostituto di cacls perché, ad esempio, non può essere usato per codificare a mano una stringa Security Descriptor Definition Language (SDDL).
L'utilità della riga di comando icacls è anche in grado di visualizzare e impostare le etichette obbligatorie di un oggetto per l'interazione con Windows Integrity Control (WIC) che è più evidente nella modalità protetta di Internet Explorer, che imposta automaticamente la modalità Low integrity a degli oggetti di Internet per proteggere il sistema operativo dal contenuto web dannoso nel browser Internet Explorer.
- Salva gli ACL per tutti i file sotto c:\windows e le sue sottodirectories, nel file di nome AclFile:
icacls c:\windows\* /save AclFile /T
- Ripristina gli ACL per ogni file contenuto in "AclFile" che esista in c:\windows e nelle sue sottodirectories:
icacls c:\windows\ /restore AclFile
- Assegna all'utente Administrator i permessi di scrittura DAC e cancellazione sui file (Delete, Write DAC):
icacls file /grant Administrator:(D,WDAC)
- Assegna all'utente (o al security group) definito dal sid S-1-1-0 i permessi di cancellazione e scrittura DAC sui file (Delete, Write DAC):
icacls file /grant *S-1-1-0:(D,WDAC)
- Mostra la lista ACL e il livello integrità:
icacls c:\windows\explorer.exe
- Modifica esplicitamente il livello integrità di un oggetto al valore "High" (Alta):
icacls file /setintegritylevel H