Унаследованные разрешения не обновляются автоматически при перемещении папок

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

Применяется к: Windows Server 2012 R2
Исходный номер базы знаний: 320246

Симптомы

Список контроль доступа (ACL) может отображать разрешения, помеченные как унаследованные от родительского элемента, но сам родительский элемент может не иметь этих разрешений, настроенных в списке управления доступом. Этот симптом может возникать, даже если наследование по-прежнему включено. Любое последующее изменение списка ACL родительской папки приводит к тому, что дочерний ACL получит унаследованные разрешения. Кроме того, любая попытка изменить список ACL дочернего объекта приводит к применению наследования (если только изменение не помечает список ACL как защищенный от наследования). Такое поведение может быть удивительным, если состояние наследования не было отмечено до начала редактирования ACL.

Примечание.

Это поведение не может быть вызвано перемещением папки при использовании компьютера под управлением Windows Vista. Операция перемещения теперь работает, так как папка или файл могут наследовать список ACL целевой папки или файла. Папка или файл также имеют разрешения, которые помечаются как унаследованные от родительского элемента. Это изменение с Windows XP на Windows Vista и Windows Server 2008.

Причина

Это может быть вызвано перемещением папки. При перемещении папки список ACL не изменяется, а унаследованные разрешения не обновляются. Обратите внимание, что перемещение в контексте этой статьи всегда означает перемещение в пределах одного тома.

При перемещении файла или папки список ACL также перемещается и не изменяется каким-либо образом. Даже если для этой папки включено наследование, унаследованные разрешения не обновляются автоматически. Список ACL будет обновлен при следующем изменении разрешений, и это приведет к тому, что родительский элемент будет распространять свои разрешения.

Это также может быть вызвано следующими причинами:

  • Установка разрешений для родительской папки с помощью CACLS не распространяется на вложенные папки. Параметр /T не означает распространение прав с помощью наследования, а перезапись всех списков управления доступом.

  • Настройка разрешений родительской папки с помощью API, который не распространяет наследование автоматически (например, Adssecurity.dll).

  • Восстановление из резервной копии в другое расположение.

Разрешение

Чтобы избежать непредвиденных изменений разрешений, установите для ACL файла или папки значение защищено , прежде чем перемещаться, когда нужно сохранить параметры. В противном случае вручную обновите список ACL для перемещенного файла или папки с помощью редактора ACL обозревателя. Отключите, а затем снова включите наследование, чтобы принудительно обновить список ACL с правонаследуемыми разрешениями. Для автоматизации этого процесса также можно использовать VBScript.

Статус

Такое поведение является особенностью данного продукта. Такое поведение не происходит из-за изменения структуры в Windows Vista.

Действия по воспроизведению поведения

  1. Создайте папку test1 с разрешениями everyone:read и users:change .
  2. Создайте вложенную папку test1\sub и включите наследование от родительского элемента (по умолчанию). В этой папке должны отображаться все:чтение и пользователи:изменить как унаследованные разрешения.
  3. Создайте другую папку test2 с разрешениями только администраторов: полный доступ .
  4. Переместите вложенную папку в test2.
  5. Просмотрите разрешения на test2\sub, чтобы просмотреть все:чтение и пользователи:изменить как унаследованные разрешения, хотя разрешение родителей — administrators:full control.
  6. Добавьте другую группу или пользователя (например, гостевого) в список ACL для предоставления дополнительных прав, например доступ на чтение с помощью редактора ACL обозревателя. После нажатия кнопки Применитьвсе:чтение и пользователи:изменение будут удалены, и только администраторы:полный доступ будут отображаться как унаследованные разрешения рядом с только что добавленным.