Команда CACLS

Команда CACLS используется для просмотра и изменения списков управления доступом (Access Control List - ACL) к файлам. CACLS считается устаревшей, и вместо нее рекомендуется использовать команду ICACLS.

Формат командной строки:


 CACLS имя_файла [/T] [/M] [/L] [/S[:SDDL]] [/E] [/C] [/G имя:доступ]
        [/R имя [...]] [/P имя:доступ [...]] [/D имя [...]]

Параметры:

    имя_файла     Просмотр списков управления доступом.
    /T            Изменение списков управления доступом для указанных файлов
                  в текущем каталоге и вложенных каталогах.
    /L            Работа с самой символической ссылкой, а не с объектом.
    /M            Изменение ACL томов, подключенных к каталогу.
    /S            Отображение строки SDDL для DACL.
    /S:SDDL       Замена ACL на указанные в строке SDDL
                  (не используется с ключами /E, /G, /R, /P и /D).
    /E            Изменение списка управления доступом вместо его замены.
    /C            Продолжение при ошибках отказа в доступе.
    /G имя:доступ Разрешения для указанных пользователей.
                  Доступ:  R  - чтение
                           W  - запись
                           C  - изменение (запись)
                           F  - полный доступ
    /R имя       Отзыв разрешений для пользователя (только вместе с /E).
    /P имя:доступ  Замена разрешений указанного пользователя.
                 Доступ:  N  - нет
                          R  - чтение
                          W  - запись
                          C  - изменение (запись)
                          F  - полный доступ
    /D имя       Запрет на доступ пользователя.
 Для выбора нескольких файлов используются подстановочные знаки.
  В команде можно указать несколько пользователей.


Для расшифровки результатов, полученных при выполнении команды CACLS используются следующие сокращения:

    CI - наследование контейнерами.
         таблица управления доступом (ACE) наследуется каталогами.
    OI - наследование объектами.
         ACE наследуется файлами.
    IO - только наследование.
         ACE не применяется к текущему файлу или каталогу.
    ID - наследование.
         ACE наследуется от ACL родительского каталога.

Возможны комбинации:


(IO)(CI)  	Права доступа применяются для данной папки, ее подпапок и файлов
(OI)(CI)(IO) 	Права доступа применяются олько для подпапок и файлов
(CI)(IO) 	Права доступа применяются только для подпапок
(OI)(IO) 	Права доступа применяются только для файлов




Примеры использования:

CACLS C:\ - отобразить список доступа к корневому каталогу диска C: . В результате выполнения команды будет выполнен вывод списка разрешений:

C:\ 
BUILTIN\Администраторы:F 
    BUILTIN\Администраторы:(OI)(CI)(IO)F 
    NT AUTHORITY\система:F 
    NT AUTHORITY\система:(OI)(CI)(IO)F 
    BUILTIN\Пользователи:(OI)(CI)R 
    NT AUTHORITY\Прошедшие проверку:(OI)(CI)(IO)C 
    NT AUTHORITY\Прошедшие проверку:(специальный доступ:)
                                    FILE_APPEND_DATA


CACLS C:\boot.ini /G user1:W - разрешить пользователю user1 запись в файл C:\boot.ini

CACLS C:\USERS /G user1:F - разрешить полный доступ пользователю user1 к каталогу C:\USERS

CACLS "C:\System Volume Information" /E /G User3:F - изменить список управления доступом ( ключ /E ), предоставив пользователю User3 полный доступ к каталогу C:\System Volume Information . Имя каталога, содержащее пробелы, заключается в двойные кавычки.

CACLS "C:\System Volume Information" /E /R User3 - отозвать полномочия пользователя User3, т.е. удалить запись управления доступом к указанному каталогу для пользователя User3

CACLS "C:\System Volume Information" /D User3 - запретить пользователю User3 доступ к каталогу C:\System Volume Information . В отличие от предыдущего примера, запись для пользователя User3 из таблицы ACE не удаляется, а выполняется ее добавление или изменение с признаками прав (OI)(CI)N (Право доступа имеет значение N для данного каталога, всех его подкаталогов и файлов).







Весь список команд CMD Windows