icacls

Parámetro Description
<filename> Especifica el archivo para el que se mostrarán las DACL.
<Directorio> Especifica el directorio para el que se mostrarán las DACL.
/t Realiza la operación en todos los archivos especificados del directorio actual y sus subdirectorios.
/C Continúa la operación a pesar de los errores de archivo. Todavía se mostrarán los mensajes de error.
/l Realiza la operación en un vínculo simbólico en lugar de en su destino.
/q Suprime los mensajes correctos.
[/save < ACLfile > [/t] [/c] [/l] [/q]] Almacena las DACL de todos los archivos que coinciden en el archivo ACL para su uso posterior con /restore.
[/setowner < username > [/t] [/c] [/l] [/q]] Cambia el propietario de todos los archivos correspondientes al usuario especificado.
[/findsid < sid > [/t] [/c] [/l] [/q]] Busca todos los archivos correspondientes que contienen una DACL que menciona explícitamente el identificador de seguridad (SID) especificado.
[/verify [/t] [/c] [/l] [/q]] Busca todos los archivos con ACL que no son canónicos o tienen longitudes incoherentes con los recuentos de ACE (entrada de control de acceso).
[/reset [/t] [/c] [/l] [/q]] Reemplaza las ACL por acl heredadas predeterminadas para todos los archivos correspondientes.
[/grant[:r] < sid > : < perm > [...]] Concede los derechos de acceso de usuario especificados. Los permisos reemplazan a los permisos explícitos concedidos previamente.

No agregar :rsignifica que los permisos se agregan a los permisos explícitos concedidos previamente.

[/deny < sid > : < perm > [...]] Deniega explícitamente los derechos de acceso de usuario especificados. Se agrega una ACE de denegación explícita para los permisos indicados y se quitan los mismos permisos en cualquier concesión explícita.
[/remove[:g | :d]] < sid > [...] [/t] [/c] [/l] [/q] Quita todas las apariciones del SID especificado de la DACL. Este comando también puede usar:
  • :g: quita todas las apariciones de derechos concedidos al SID especificado.
  • :d: quita todas las apariciones de derechos denegados en el SID especificado.
[/setintegritylevel [(CI)(OI)] < Nivel > : < Directiva > [...]] Agrega explícitamente una ACE de integridad a todos los archivos correspondientes. El nivel se puede especificar como:
  • l : bajo
  • m- Medio
  • h - High
Las opciones de herencia de la ACE de integridad pueden preceder al nivel y solo se aplican a los directorios.
[/substitute < sidold >< sidnew > [...]] Reemplaza un SID existente(sidold) por un nuevo SID (sidnew). Requiere usar con el <directory> parámetro .
/restore < ACLfile > [/c] [/l] [/q] Aplica las DACL almacenadas <ACLfile> desde a los archivos del directorio especificado. Requiere usar con el <directory> parámetro .
/inheritancelevel: [e | d | r] Establece el nivel de herencia, que puede ser:
  • e: habilita la herencia
  • d: deshabilita la herencia y copia las ACE.
  • r: quita todas las ACE heredadas

Observaciones

  • Los SID pueden tener un formato de nombre numérico o descriptivo. Si usa un formato numérico, pegue el carácter comodín * al principio del SID.

  • Este comando conserva el orden canónico de las entradas ACE como:

    • Denegaciones explícitas

    • Concesiones explícitas

    • Denegaciones heredadas

    • Concesiones heredadas

  • La <perm> opción es una máscara de permisos que se puede especificar en una de las formas siguientes:

    • Una secuencia de derechos simples:

      • F: acceso completo

      • M:modificar el acceso

      • RX: acceso de lectura y ejecución

      • R: acceso de solo lectura

      • W: acceso de solo escritura

    • Lista separada por comas entre paréntesis de derechos específicos:

      • D- Eliminar

      • RC: control de lectura

      • WDAC: escribir DAC

      • WO: propietario de escritura

      • S: sincronizar

      • AS: acceso a la seguridad del sistema

      • MA: máximo permitido

      • GR: lectura genérica

      • GW: escritura genérica

      • GE: ejecución genérica

      • Ga- Generic all (Ga: todos genéricos)

      • Escritorio remoto: lectura de datos o directorio de lista

      • WD: escritura de datos o adición de archivos

      • AD: anexar datos o agregar subdirectorio

      • REA: lectura de atributos extendidos

      • WEA: escritura de atributos extendidos

      • X: ejecución y recorrido

      • DC: eliminación del elemento secundario

      • RA: leer atributos

      • WA: escribir atributos

    • Los derechos de herencia pueden <perm> preceder a cualquiera de los formularios y solo se aplican a los directorios:

      • (OI): heredar objeto

      • (CI): heredar contenedor

      • (E/S): solo heredar

      • (NP): no propagar inherit

Ejemplos

Para guardar las DACL de todos los archivos del directorio C:\Windows y sus subdirectorios en el archivo ACLFile, escriba:

icacls c:\windows\* /save aclfile /t

Para restaurar las DACL de cada archivo dentro de ACLFile que existe en el directorio C:\Windows y sus subdirectorios, escriba:

icacls c:\windows\ /restore aclfile

Para conceder al usuario permisos user1 Delete y Write DAC en un archivo denominado Test1, escriba:

icacls test1 /grant User1:(d,wdac)

Para conceder al usuario definido por SID S-1-1-0 Permisos de DAC de eliminación y escritura en un archivo, denominado Test2, escriba:

icacls test2 /grant *S-1-1-0:(d,wdac)

Referencias adicionales

Muestra o modifica las listas de control de acceso discrecional (DACL) en los archivos especificados y aplica las DACL almacenadas a los archivos de los directorios especificados.

Nota

Este comando reemplaza al comando cacls en desuso.

Sintaxis

icacls <filename> [/grant[:r] <sid>:<perm>[...]] [/deny <sid>:<perm>[...]] [/remove[:g|:d]] <sid>[...]] [/t] [/c] [/l] [/q] [/setintegritylevel <Level>:<policy>[...]]
icacls <directory> [/substitute <sidold> <sidnew> [...]] [/restore <aclfile> [/c] [/l] [/q]]

Parámetros