Acl windows как посмотреть

Команда iCACLS – управление доступом к файлам и папкам.

Команда iCACLS позволяет отображать или изменять списки управления доступом ( A ccess C ontrol L ists (ACLs) ) к файлам и папкам файловой системы. Утилита iCACLS.EXE является дальнейшим усовершенствованием утилиты управления доступом CACLS.EXE.

Управление доступом к объектам файловой системы NTFS реализуется с использованием специальных записей в таблице MFT (Master File Table). Каждому файлу или папке файловой системы NTFS соответствует запись в таблице MFT, содержащая специальный дескриптор безопасности SD (Security Descriptor). Каждый дескриптор безопасности содержит два списка контроля доступа:

SACL управляется системой и используется для обеспечения аудита попыток доступа к объектам файловой системы, определяя условия при которых генерируется события безопасности. В операционных системах Windows Vista и более поздних, SACL используется еще и для реализации механизма защиты системы с использованием уровней целостности ( Integrity Level, IL).

При определении результатов запросов на доступ к объектам файловой системы NTFS применимы следующие правила:

Варианты применения команды iCACLS:

/grant[:r] Sid:perm — предоставление указанных прав доступа пользователя. С параметром :r эти разрешения заменяют любые ранее предоставленные явные разрешения. Без параметра :r разрешения добавляются к любым ранее предоставленным явным разрешениям.

/deny Sid:perm — явный отзыв указанных прав доступа пользователя. Добавляется ACE явного отзыва для заявленных разрешений с удалением этих же разрешений в любом явном предоставлении.

/remove[:[g|:d]] Sid — удаление всех вхождений ИД безопасности в ACL. С параметром :g удаляются все вхождения предоставленных прав в этом ИД безопасности. С параметром :d удаляются все вхождения отозванных прав в этом ИД безопасности.

/setintegritylevel [(CI)(OI)]уровень — явное добавление ACE уровня целостности ко всем соответствующим файлам. Уровень задается одним из следующих значений:

Уровню могут предшествовать параметры наследования для ACE целостности, применяемые только к каталогам.

Механизм целостности Windows Vista и более поздних версий ОС, расширяет архитектуру безопасности путём определения нового типа элемента списка доступа ACE для представления уровня целостности в дескрипторе безопасности объекта (файла, папки). Новый ACE представляет уровень целостности объекта. Он содержится в системном ACL (SACL), который ранее используемом только для аудита. Уровень целостности также назначается токену безопасности в момент его инициализации. Уровень целостности в токене безопасности представляет уровень целостности (Integrity Level, IL) пользователя (процесса). Уровень целостности в токене сравнивается с уровнем целостности в дескрипторе объекта когда монитор безопасности выполняет проверку доступа. Система ограничивает права доступа в зависимости от того выше или ниже уровень целостности субъекта по отношению к объекту, а также в зависимости от флагов политики целостности в соответствующей ACE объекта. Уровни целостности (IL) представлены идентификаторами безопасности (SID), которые представляют также пользователей и группы, уровень которых закодирован в относительном идентификаторе (RID) идентификатора SID. Наиболее распространенные уровни целостности:

SID= S-1-16-8192 RID=0x2000 – уровень Medium (Средний обязательный уровень)

SID= S-1-16-12288 RID=0x3000 – уровень High (Высокий обязательный уровень)

SID= S-1-16-16384 RID=0x4000 – уровень системы (Обязательный уровень системы).

Утилита ICACLS сохраняет канонический порядок записей ACE:

Права наследования могут предшествовать любой форме и применяются только к каталогам:

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

C:\Users NT AUTHORITY\система:(OI)(CI)(F)
BUILTIN\Администраторы:(OI)(CI)(F)
BUILTIN\Пользователи:(RX)
BUILTIN\Пользователи:(OI)(CI)(IO)(GR,GE)
Все:(RX)
Все:(OI)(CI)(IO)(GR,GE)

Успешно обработано 1 файлов; не удалось обработать 0 файлов

Пример данных сохраненных списков доступа ACL:

В тех случаях, когда при выполнении команды iCACLS возникает ошибка, вызванная отказом в доступе к обрабатываемому объекту, можно продолжить выполнение команды, если задан параметр /C :

Для восстановления доступа к файлам и папкам используется параметр /restore :

Источник

Управление NTFS разрешениями на папки и файлы из PowerShell

Встроенные командлеты для управления ACL в NTFS: Get-Acl и Set-Acl

В PowerShell v5 (Windows 10 / Windows Server 2016) для управления ACL имеется два отдельных встроенных командлета (входят в модуль Microsoft.PowerShell.Security):

Мы не будем подробно останавливаться на этих встроенных командлетах, т.к. их функционал в большинстве случае недостаточен для управления NTFS разрешениями в реальных задачах. Рассмотрим лишь несколько типовых примеров их использования.

Выведем текущего владельца папки (файла) и список назначенных NTFS разрешений:

get-acl C:\Drivers\ |fl

Path : Microsoft.PowerShell.Core\FileSystem::C:\Drivers\
Owner : WORKSTAT1\root
Group : WORKSTAT1\Отсутствует
Access : NT AUTHORITY\Authenticated Users Allow Modify, Synchronize
NT AUTHORITY\SYSTEM Allow FullControl
BUILTIN\Администраторы Allow FullControl
BUILTIN\Пользователи Allow ReadAndExecute, Synchronize
WORKSTAT1\root Allow Modify, Synchronize
Audit :
Sddl : O:S-1-5-21-3650440056-3766451173-3310994491-1001G:S-1-5-21-3650440056-766451173-3310994491-513D:PAI(A;OICI;0x 1301bf;;;AU)(A;OICI;FA;;;SY)(A;OICI;FA;;;BA)(A;OICI;0x1200a9;;;BU)(A;OICI;0x1301bf;;;S-1-5-21-3650440056-37664 51173-3310994491-1001)

Читайте также:  Windows word недостаточно памяти

Можно вывести только списки NTFS разрешений в более понятном формате:

С помощью следящей команды можно скопировать NTFS разрешения с одной папки и применить их на другую:

Get-Acl C:\Drivers | Set-Acl C:\Distr

Главная проблема при использовании Set-ACL – командлет всегда пытается сменить владельца ресурса, даже если вы просто хотите изменить NTFS разрешения. В результате, чтобы добавить права на объект нужно использовать такую конструкцию:

Чтобы отключить наследование для папки из PowerShell:

Используем модуль NTFSSecurity для управления разрешениями из PowerShell

Импортируйте модуль NTFSSecurity в сессию PowerShell:

Выведем список команд, доступных в модуле (доступно 36 командлетов):

Выведем текущие NTFS разрешения на каталог:
Get-Item ‘c:\distr’ | Get-NTFSAccess

Как вы видите, текущие разрешения представлены в более удобной форме.

Чтобы предоставить права только на верхнем уровне и не изменять разрешения на вложенные объекты (только на папку), используйте команду:

Удалить назначенные NTFS разрешения:

Следующей командой можно лишить указанную учетную прав на все вложенные объекты в указанной папке (наследованные разрешения будут пропущены):

Следующей командой можно назначить учетную запись Administrator владельцем всех вложенных объектов в каталоге:

Чтобы очистить все разрешения, назначенные на объекты каталога вручную (не будет удалены унаследованные разрешения):

Включить NTFS наследование для всех объектов в каталоге:

Чтобы вывести все разрешения, которые назначены вручную, исключая унаследованные разрешения:

dir C:\distr | Get-NTFSAccess –ExcludeInherited

Можно вывести разрешения, назначенные для определенного аккаунта (не путайте с эффективными разрешениями, речь о них ниже):

Проверка эффективных NTFS разрешений на объекты из PowerShell

Либо вы можете проверить эффективные разрешения на конкретный файл:

Источник

Утилита iCACLS для управления NTFS доступом к файлам и папкам

Одной из типовых задач администратора Windows при настройке доступа пользователей – управление NTFS разрешениями на папки и файлы файловой системы. Для управления NTFS разрешениями можно использовать графический интерфейс системы (вкладка Безопасность/Security в свойствах папки или файла), или встроенную утилиту командной строки iCACLS. В этой статье мы рассмотрим примеру использовании команды iCACLS для просмотра и управления разрешениями на папки и файлы.

Утилита iCACLS позволяет отображать или изменять списки управления доступом (Access Control Lists (ACLs) к файлам и папкам файловой системы. Предшественником у утилиты iCACLS.EXE является команда CACLS.EXE (доступна в Windows XP).

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

Данная команда вернет список всех пользователей и групп пользователей, которым назначены разрешения на данную папку. Попробуем разобраться в синтаксисе разрешений, которые вернула команда iCACLS.

c:\PS BUILTIN\Администраторы:(I)(OI)(CI)(F)
NT AUTHORITY\СИСТЕМА:(I)(OI)(CI)(F)
BUILTIN\Пользователи:(I)(OI)(CI)(RX)
NT AUTHORITY\Прошедшие проверку:(I)(M)
NT AUTHORITY\Прошедшие проверку:(I)(OI)(CI)(IO)(M)

Успешно обработано 1 файлов; не удалось обработать 0 файлов

Напротив каждой группы и пользователя указан уровень доступа. Права доступа указываются с помощью сокращений. Рассмотрим разрешения для группы BUILTIN\Администраторы.

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

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

Права наследования:

(OI) — object inherit
(CI) — container inherit
(IO) — inherit only
(NP) — don’t propagate inherit
(I) — Permission inherited from parent container

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

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

Детальные разрешения:

DE — Delete
RC — read control
WDAC — write DAC
WO — write owner
S — synchronize
AS — access system security
MA — maximum allowed
GR — generic read
GW — generic write
GE — generic execute
GA — generic all
RD — read data/list directory
WD — write data/add file
AD — append data/add subdirectory
REA — read extended attributes
WEA — write extended attributes
X — execute/traverse
DC — delete child
RA — read attributes
WA — write attributes

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

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

icacls C:\PS\* /save c:\backup\export_ps_acl.txt /t

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

Чтобы применить сохраненные списки доступа (восстановить разрешения на каталог и все вложенные объекты), выполните команду:

Читайте также:  Windows store ltsc github

icacls C:\PS /restore :\backup\export_ps_acl.txt

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

С помощью команды icacls вы можете изменить списки доступа к папке. Например, вы хотите предоставить пользователю aivanov право на редактирование содержимого папки. Выполните команду:

icacls C:\PS /grant aivanov:M

Удалить все назначенные разрешения для учетной записи пользователя aivanov можно с помощью команды:

icacls C:\PS /remove aivanov

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

icacls c:\ps /deny «MSKManagers:(CI)(M)»

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

С помощью команды icacls вы можете изменить владельца каталог или папки, например:

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

Теперь разберемся, что это за параметры используются в каждой команде.

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

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

Также при помощи icacls можно сбросить текущие разрешения на объекты,

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

После выполнения команды все текущие разрешения на папку будут сброшены и заменены на разрешения, наследуемые с вышестоящего объекта (каталога).

Источник

icacls icacls

Отображает или изменяет избирательные списки управления доступом (DACL) для указанных файлов и применяет сохраненные списки DACL к файлам в указанных каталогах. Displays or modifies discretionary access control lists (DACLs) on specified files, and applies stored DACLs to files in specified directories.

Эта команда заменяет устаревшую команду cacls. This command replaces the deprecated cacls command.

Синтаксис Syntax

Параметры Parameters

Параметр Parameter Описание Description
Указывает файл, для которого должны отображаться списки DACL. Specifies the file for which to display DACLs.
Указывает каталог, в котором должны отображаться списки DACL. Specifies the directory for which to display DACLs.
/t /t Выполняет операцию для всех указанных файлов в текущем каталоге и его подкаталогах. Performs the operation on all specified files in the current directory and its subdirectories.
/C /c Возобновляет операцию, несмотря на любые ошибки в файлах. Continues the operation despite any file errors. Сообщения об ошибках по-прежнему будут отображаться. Error messages will still be displayed.
/l /l Выполняет операцию с символической ссылкой вместо ее назначения. Performs the operation on a symbolic link instead of its destination.
/q /q Подавляет сообщения об успешном выполнении. Suppresses success messages.
[/Save /t ключей /l [/q]] [/save [/t] [/c] [/l] [/q]] Сохраняет списки DACL для всех соответствующих файлов в аклфиле для последующего использования с параметром /RESTORE. Stores DACLs for all matching files into ACLfile for later use with /restore.
[/сетовнер /t ключей /l [/q]] [/setowner [/t] [/c] [/l] [/q]] Изменяет владельца всех соответствующих файлов на указанного пользователя. Changes the owner of all matching files to the specified user.
[/финдсид /t ключей /l [/q]] [/findsid [/t] [/c] [/l] [/q]] Находит все совпадающие файлы, содержащие DACL, явно упомянутый с указанным идентификатором безопасности (SID). Finds all matching files that contain a DACL explicitly mentioning the specified security identifier (SID).
[/Verify [/t] [/c] [/l] [/q]] [/verify [/t] [/c] [/l] [/q]] Находит все файлы со списками управления доступом, которые не являются каноническими или имеют длину, несовместимую с счетчиками ACE (запись контроля доступа). Finds all files with ACLs that are not canonical or have lengths inconsistent with ACE (access control entry) counts.
[/Reset [/t] [/c] [/l] [/q]] [/reset [/t] [/c] [/l] [/q]] Заменяет списки ACL на унаследованные списки ACL по умолчанию для всех соответствующих файлов. Replaces ACLs with default inherited ACLs for all matching files.
[/Грант [: r] : [. ]] [/grant[:r] :[. ]] Предоставляет указанные права доступа пользователя. Grants specified user access rights. Разрешения заменяют ранее предоставленные явные разрешения. Permissions replace previously granted explicit permissions.

Комментарии Remarks

Идентификаторы SID могут быть в виде числовых или понятных имен. SIDs may be in either numerical or friendly name form. Если используется числовая форма, прикреплять символ-шаблон * к началу идентификатора SID. If you use a numerical form, affix the wildcard character * to the beginning of the SID.

Эта команда сохраняет канонический порядок записей ACE следующим образом: This command preserves the canonical order of ACE entries as:

Явные отказы Explicit denials

Явные гранты Explicit grants

Унаследованные отказы Inherited denials

Унаследованные гранты Inherited grants

Параметр — это маска разрешений, которая может быть указана в одной из следующих форм: The

option is a permission mask that can be specified in one of the following forms:

Последовательность простых прав: A sequence of simple rights:

M— изменение доступа M— Modify access

Список с разделителями-запятыми в скобках для конкретных прав: A comma-separated list in parenthesis of specific rights:

Права на наследование могут предшествовать любой

форме, и они применяются только к каталогам: Inheritance rights may precede either

form, and they are applied only to directories:

Примеры Examples

Чтобы сохранить списки DACL для всех файлов в каталоге C:\Windows и его подкаталогах в файле Аклфиле, введите: To save the DACLs for all files in the C:\Windows directory and its subdirectories to the ACLFile file, type:

Чтобы восстановить списки DACL для каждого файла в Аклфиле, который существует в каталоге C:\Windows и его подкаталогах, введите: To restore the DACLs for every file within ACLFile that exists in the C:\Windows directory and its subdirectories, type:

Чтобы предоставить пользователю User1 разрешения на удаление и запись DAC в файл с именем Test1, введите: To grant the user User1 Delete and Write DAC permissions to a file named Test1, type:

Чтобы предоставить пользователю, заданному с помощью SID S-1-1-0, разрешения DAC и Write в файл с именем test2, введите: To grant the user defined by SID S-1-1-0 Delete and Write DAC permissions to a file, named Test2, type:

Источник

Information Security Squad

stay tune stay secure

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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, выполните команду:

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

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

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

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

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

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

Примеры

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

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

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

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

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

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

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

Источник

Поделиться с друзьями
Советы экспертов и специалистов
Adblock
detector