14

Что это значит:

C:\foo\> icacls .
. NT AUTHORITY\IUSR:(M)
  BUILTIN\IIS_IUSRS:(M)
  BUILTIN\IIS_IUSRS:(OI)(CI)(M)
  NT AUTHORITY\IUSR:(OI)(CI)(M)
  BUILTIN\IIS_IUSRS:(I)(OI)(CI)(RX)
  NT AUTHORITY\IUSR:(I)(OI)(CI)(RX)
  NT AUTHORITY\SYSTEM:(I)(OI)(CI)(F)
  BUILTIN\Administrators:(I)(OI)(CI)(F)

Я думаю, что первое означает, что идентификатор пользователя получает разрешения на изменение каталога, что означает, что пользователь может создавать файлы, обновлять файлы или удалять файлы. Правильно? Что такое пользователь "NT AUTHORITY\IUSR"? Это действительно один идентификатор пользователя? Это идентификатор пользователя IIS по умолчанию?

хорошо, вторая строка, я думаю, относится к группе. Он получает те же разрешения.

Как насчет всех этих строк с (I) и (OI) и так далее. Пожалуйста, объясни.

1 ответ1

21

Из статьи Microsoft о ICACLS

Записи - это пользователи и группы, относящиеся к этому файлу (DOMAIN\USER или GROUP), перечисленные разрешения:

SID могут быть в числовой или дружественной форме. Если вы используете числовую форму, прикрепите подстановочный знак * к началу SID.

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

  • Явные опровержения
  • Явные гранты
  • Унаследованные отказы
  • Унаследованные гранты

Пермь - это маска прав, которую можно указать в одной из следующих форм:

  1. Последовательность простых прав:
    • F (полный доступ)
    • M (изменить доступ)
    • RX (доступ для чтения и выполнения)
    • R (доступ только для чтения)
    • W (доступ только для записи)
  2. Список через запятую в скобках конкретных прав:
    • D (удалить)
    • RC (контроль чтения)
    • WDAC (напиши DAC)
    • WO (написать владельцу)
    • S (синхронизировать)
    • AS (система безопасности доступа)
    • MA (максимально допустимый)
    • GR (общее чтение)
    • GW (общая запись)
    • GE (универсальное исполнение)
    • GA (универсальный все)
    • RD (читать каталог данных / списка)
    • WD (запись данных / добавление файла)
    • AD (добавить данные / добавить подкаталог)
    • REA (читать расширенные атрибуты)
    • WEA (написать расширенные атрибуты)
    • X (выполнить / пройти)
    • DC (удалить ребенка)
    • RA (читать атрибуты)
    • WA (запись атрибутов)

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

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

Для файлов маски разрешений более или менее говорят сами за себя: R означает, что вы можете прочитать файл, X разрешает его выполнение (как программу) и так далее.

Для других типов объектов вам нужно будет просмотреть MSDN:

Право наследования на английском языке:

  • (I) "Унаследовано": этот ACE был унаследован от родительского контейнера.
  • (OI) "Объектное наследование": этот ACE будет наследоваться объектами, помещенными в этот контейнер.
  • (CI) "Наследование контейнера": этот ACE будет наследоваться субконтейнерами, помещенными в этот контейнер.
  • (IO) "Наследовать только": этот ACE будет наследоваться (см. OI и CI), но не применяется к самому этому объекту.
  • (NP) "Не распространять": этот ACE будет наследоваться объектами и субконтейнерами на один уровень глубины - он не будет применяться к вещам внутри субконтейнеров.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .