У меня есть цель, чтобы пользователи не могли случайно перемещать или удалять папки на одном определенном уровне иерархии общего ресурса Windows Server 2019.
Пример:
Две группы пользователей: AdminиUser
|-RootShareDirecory <= Directory that is Shared
|- ProjectFolder1 <= Folder should only be moved / changed / deleted by an admin
|- File1.doc <= User has full access to the content it self.
|- SubFolder2 <= User has full access to the content it self.
|- ProjectFolder2 <= Folder should only be moved / changed / deleted by an admin
...
Большинство решений основаны на создании acl, ProjectFolderX. который запрещает действие удаления для User.
К сожалению, я могу получить только два разных результата:
- Это ProjectFolderXвсе еще подвижно, но любое другое действие в пределах RootShareDirecory запрещено.
- Объект ProjectFolderXне является подвижным, но также имеет прямое содержимое внутри (например, File1.docнедоступно для записи.
Может кто-нибудь дать мне подсказку, как решить эту проблему? Спасибо.
ОТВЕТ:
Я описываю разрешения для user. Используйте диалоговое окно «Расширенная безопасность», чтобы добавить эти разрешения. (Правый клик / Настройки / Безопасность / Дополнительно)
RootShareDirecory
- Разрешение This Folder, SubFolder and Filesтолько дляRead, Execute
ProjectFolderX
- Активируйте Разрешение наследования.
- Разрешение для This Folderкаждого разрешения, кроме Delete .
- Разрешение на Only Subfolder and Files полный доступ.
Explaination
Чтобы предотвратить перемещение файла, вы должны отключить удаление. К сожалению, есть два значения, которые влияют на возможность удаления папки:
- Delete Разрешение на саму папку
- Delete subfolders and files Из родительской папки.
Убедитесь, что пользователь, которому запрещено удалять, не имеет ни одного из этих двух разрешений.