Одной из типичных задач для администратора 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
Спасибо огромное, тут мне наконец разжевали с нормальными примерами!
Всегда рады помочь!
icacls C:\PS /grant John:M
не работает