Как запретить пользователям удалять папку, сохраняя при этом права на изменение ее содержимого?
Я пытаюсь запретить пользователям случайно удалять определенные папки (например, их личную папку для сканирования), хранящуюся на их домашнем диске, и при этом давать им права на чтение + запись для содержимого этих специальных папок.
Мои эксперименты с различными комбинациями разрешений NTFS не увенчались успехом, так как я обнаружил, что пользователи либо не могут получить доступ к содержимому … или могут удалить родительскую папку.
Как я могу это сделать?
- Как я могу отформатировать раздел как HFS на ПК?
- Мнения по решению NTFS для Mac?
- Можно ли преобразовать ntfs-раздел в ext3?
- Разрешения NTFS - запретить удаление не работает
- Удаление атрибута `разреженного` файла
- Как я могу проверить фактический размер, используемый в каталоге NTFS со многими hardlinks?
- Восстановление данных с диска NTFS после операции зеркального отображения RAID1
- Есть ли способ предоставить разрешения NTFS для пользователей из других установок Windows?
- Как получить доступ к внешнему жесткому диску с NTFS из моего iMac бесплатно?
- Как удалить файлы с внешнего диска NTFS с помощью OS X?
- Почему временные метки меняются при копировании или перемещении файлов в Windows?
- Узнайте, откуда был загружен файл
- Скопируйте файлы с одного диска на другой и сохраните жесткую ссылку в Windows
Как отметил Грэхем, использование нескольких записей разрешений для одного и того же пользователя (то, что я никогда не делал раньше) было ключевым:
Разрешения в родительской папке дают пользователям практически абсолютную свободу вносить какие-либо изменения … кроме того, что флажок «удалить» не установлен – пользователи не могут случайно удалить / переместить / переименовать эту важную папку:
Переходя к второму разрешению, установленному для того же пользователя (который применяется не к самой папке, а к ее содержимому), мы видим те же самые права, предоставленные пользователю, включая привилегии «удалить».
Таким образом, пользователи могут делать все, что захотят, в подпапки и файлы, включая удаление / перемещение / переименование.
Эта конфигурация позволяет мне защищать ключевые папки, такие как персонализированные каталоги целевого сканирования, которые находятся в личных местах пользователя. Пользователи могут изменять содержимое (например, удалять PDF-файлы, которые они больше не хотят сохранять), но не могут непреднамеренно вызвать проблемы для себя, удалив папку, которую сканер ожидает увидеть при ее сохранении в сети.
Мне пришлось отключить наследование для специальной папки, поскольку в противном случае было невозможно внести изменения в разрешения пользователя, которые варьировались от корня сетевого ресурса; Однако все подпапки и объекты используют наследование, чтобы получить свои разрешения из своей родительской папки.
Как только я понял, что нужно сделать, это потребовало всего пару минут, чтобы настроить каждого пользователя. Теперь у меня есть спокойствие, что ключевые сетевые папки не могут случайно удаляться пользователями.
Папка должна иметь разрешение на чтение, удалять вложенные папки и файлы, создавать папки / добавлять данные, создавать файлы / записывать данные, читать атрибуты, просматривать папки / читать данные, перемещать папку / файл выполнения и все. Содержимое должно быть полным. Эта комбинация (при условии правильного владения файлами и правильного создания и администрирования пользователя) позволяет вашим пользователям иметь доступ через папку к ее содержимому, без возможности их удаления или изменения самой папки.
Возможность удалить что-либо из папки обычно зависит от разрешений, назначенных родителем, а не самой папки (т. Е. Вы не можете сказать: «Не удалять меня»). Таким образом, это означает, что вам нужно управлять разрешением удаления самой папки в разрешениях родителя папки.
Например:
| -B | + A.html | + B.html | + C.html + -C + A.doc + B.doc
Возможность удаления «a.html» контролируется «B» (или унаследована от «A»). Поэтому, если вы хотите прекратить удалять «B», вам необходимо правильно установить права на «A». Это становится довольно раздражающим, если вы хотите удалить «C», но не «B». Иногда назначение владельца папки (но не ее содержимого) отдельному пользователю проще и очевиднее.