1

Я знаю, что об этом спрашивали, но каждый ответ, который я пробовал за последние три часа, не работал. Поэтому я надеюсь получить решение, которое работает на моем компьютере (под управлением Windows 7).

Предполагая следующую настройку

Parent
  File1
  File2
  SubFolder

Я хотел бы установить разрешения для Parent так, чтобы его нельзя было удалить / переместить / переименовать, но подпапки и файлы (например, "File1"; "File2"; "SubFolder") все сохраняют разрешение на удаление / изменение в любом случае.

Что я сделал. Щелкните правой кнопкой мыши "Родитель"> Свойства> Вкладка "Безопасность"> "Дополнительно"> "Изменить разрешения"> Снимите флажок "Включить наследуемые разрешения от родительского объекта" и выберите "Добавить" в появившемся диалоговом окне> Выберите "Администраторы"> "Редактировать"> «Применить к:» Это только папка "> Отметьте Запретить для" Удалить "

Я тогда применяю все. Тем не менее, я все еще могу удалить папку.

Буду признателен за любую оказанную помощь. Рады предоставить скриншоты или любую дополнительную информацию, необходимую

Обновление Прилагаются скриншоты моих текущих настроек. Однако я все еще могу щелкнуть папку, а затем нажать кнопку «Удалить» на клавиатуре, и папка будет удалена. Я пытался как с явным запретом на удаление, так и без него, и оба раза со следующими настройками смог удалить папку как зарегистрированный пользователь.

Установите для владельца значение SYSTEM

Разрешения Записи

Пользовательские разрешения для папки

Права пользователя для вложенных папок

Системные разрешения

Явное запрещение удаления разрешения для пользователя (пробовал с и без)

1 ответ1

2

Как правило, вам следует избегать явных правил DENY в ACL. Если это требуется, это часто потому, что данные уже структурированы неправильно.

Возможность удаления или переименования папки определяется не разрешениями « Delete для рассматриваемой папки, а разрешением « Delete subfolders and files в родительской папке. Это нелогично и отличается от того, как работают разрешения для файла. Это определенно не работает, как вы ожидаете.

Давайте использовать следующую структуру папок / файлов в качестве примера:

FolderA
    File1
    FolderB
        File2
        FolderC
            File3

FolderB и File1 находятся в родительской FolderA . FolderC и File2 находятся в родительской FolderB и так далее.

Теперь, если мы удалим разрешение на Delete из File1 , File2 или File3 для любого пользователя, этому пользователю будет запрещено переименовывать и удалять файл. Это также верно, если вы используете явное Delete DENY для файла.

Однако если вы удалите разрешение на Delete из FolderA , FolderB или FolderC для любого пользователя, этот пользователь все равно сможет переименовать и удалить папку. Это также верно, если вы используете явное Delete DENY в папке.

Это почему? Поскольку разрешение « Delete является разрешением, которое применяется к файлам, а не к папкам. Вместо этого мы должны удалить разрешение на Delete subfolders and files из родительской папки, чтобы выполнить то, что вы просите.

В нашем примере выше нам нужно будет удалить разрешение на Delete subfolders and files из FolderA для конкретного пользователя, назначив разрешение только this folder only . В этом случае пользователь не сможет изменить FolderB и File1. То же самое верно, если вы вместо этого используете явные подпапки DENY Delete subfolders and files в FolderA .

Пользователь по-прежнему может переименовывать и удалять FolderA если родительский FolderA также не ограничил это разрешение. Пока вы применили разрешение к this folder only тогда, пользователь продолжит иметь возможность читать / писать / изменять File2 , FolderC и File3 .

Очевидным недостатком здесь является то, что для выполнения того, что вы просите, требуется 2 уровня папок. В вашем случае вы упоминаете, что пытаетесь защитить папку Dropbox. Итак, ваша структура папок должна выглядеть так:

Dropbox
    Protected Folders
        File1
        File2
        FolderA
    Protected Files

Для определенного пользователя или группы вы удалили бы разрешение на Delete subfolders and files для this folder only в папке Dropbox . Затем вы добавите или сохраните для конкретного пользователя или группы разрешения « Full Control доступ» или « Modify для subfolders and files в папке Dropbox .

Теперь затронутый пользователь не сможет изменять какие-либо файлы или папки непосредственно под папкой Dropbox , но сможет изменять все файлы и папки, содержащиеся в любых подпапках.

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

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