Использование iCACLS для вывода списка прав и управления файлами |

Использование iCACLS для вывода списка прав и управления файлами

Мануал

Одной из типичных задач для администратора Windows является управление разрешениями NTFS для папок и файлов в файловой системе.

Чтобы управлять разрешениями NTFS, вы можете использовать графический интерфейс Проводника (вкладка «Безопасность» в свойствах папки или файла) или встроенную утилиту командной строки iCACLS.

В этой статье мы рассмотрим пример использования команды iCACLS для просмотра и управления разрешениями на папки и файлы.

Использование команды iCACLS

Команда iCACLS позволяет отображать или изменять списки управления доступом (ACL) для файлов и папок в файловой системе.

Предшественником утилиты iCACLS.EXE является команда CACLS.EXE (используется в Windows XP).

Чтобы просмотреть текущие разрешения для определенной папки (например, C: \ PS), откройте командную строку и запустите команду:

icacls c:\PS

Эта команда вернет вам список всех пользователей и групп, которым назначены права для этого каталога.

Попробуем понять синтаксис разрешений, возвращаемых командой iCACLS:

c:\PS CORP\someusername:(OI)(CI)(M)

      NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)

      BUILTIN\Administrators:(I)(OI)(CI)(F)

      BUILTIN\Users:(I)(OI)(CI)(RX)

      CREATOR OWNER:(I)(OI)(CI)(IO)(F)

Successfully processed 1 files; Failed processing 0 files

Права доступа указываются с использованием сокращений.

Рассмотрим разрешения для пользователя CORP \ someusername.

Для этого пользователя назначаются следующие разрешения:

(OI) – наследование объекта
(CI) – наследование контейнера
(M) – доступ на изменение

Это означает, что у этого пользователя есть права на запись и изменение данных в этом каталоге.

Эти права наследуются ко всем дочерним объектам в этом каталоге.

Ниже приведен полный список разрешений, которые можно установить с помощью утилиты icacls:

Настройки наследования iCACLS:

(OI) – наследование объекта
(CI) – наследование контейнера
(IO) – наследовать только
(NP) – не распространять наследование
(I) – разрешение, унаследованное от родительского контейнера

Список основных прав доступа:

  • D –  доступ на удаление
  • F – полный доступ
  • N – нет доступа
  • M – изменение
  • RX – чтение и выполнение
  • R – доступ только для чтения
  • W – доступ только для записи

Подробные права:

DE – удаление
RC – контроль чтения
WDAC – запись в DAC
WO – владелец записи
S – синхронизировать
AS – безопасность системы доступа
MA – максимальные права
GR – общий текст
GW – общая запись
GE – общий запуск
GA – общий
RD – чтение данных / список каталогов
WD – записать данные / добавить файл
AD – добавить данные / добавить подкаталог
REA – чтение расширенных атрибутов
WEA – писать расширенные атрибуты
X – выполнение / траверс
DC – удаление дочерних
RA – читать атрибуты
WA – атрибуты записи

Используя команду icacls, вы можете сохранить текущий ACL объекта в файле, а затем применить сохраненный список к тем же или другим объектам (своего рода резервный ACL-путь).

Чтобы экспортировать текущий ACL папки C: \ PS и сохранить их в файле PS_folder_ACLs.txt, выполните команду:

icacls C:\PS\* /save c:\temp\PS_folder_ACLs.txt /t

Эта команда сохраняет ACL не только о самом каталоге, но и о всех подпапках и файлах.

Полученный текстовый файл можно открыть с помощью блокнота или любого текстового редактора.

Чтобы применить ACL  выполните команду:

icacls C:\PS /restore c:\temp\PS_folder_ACLs.txt

Использовать iCACLS для предоставления разрешений или изменения списков доступа для папки

Таким образом, процесс  передачи ACL из одной папки в другую, становится намного проще.

С помощью команды icacls вы можете изменить списки доступа для этой папки.

Примеры

Например, вы хотите предоставить пользователю John разрешения на редактирование содержимого папки C: \ PS.

Выполните команду:

icacls C:\PS /grant  John:M

Вы можете удалить все права Джона, используя команду:

icacls C:\PS /remove John

Кроме того, вы можете запретить пользователю или группе пользователей доступ к файлу или папке следующим образом:

icacls c:\ps /deny "NYUsers:(CI)(M)"

Имейте в виду, что запрещающие правила имеет более высокий приоритет, чем разрешающие правила.

Используя команду icacls, вы можете изменить владельца каталога или папки, например:

icacls c:\ps\secret.docx /setowner John /T /C /L /Q

Вы можете изменить владельца всех файлов в каталоге:

icacls c:\ps\* /setowner John /T /C /L /Q

Также с помощью icacls вы можете сбросить текущие разрешения на объектах файловой системы:

ICACLS C:\ps /T /Q /C /RESET

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий

  1. Денис

    Спасибо огромное, тут мне наконец разжевали с нормальными примерами!

    Ответить
    1. cryptoparty автор

      Всегда рады помочь!

      Ответить
  2. Иван

    icacls C:\PS /grant John:M

    не работает

    Ответить