Я хочу что-то похожее на следующее:

Есть папка, давайте назовем ее «Родитель».

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

Пример:

У пользователя есть zip-файл. Они могут поместить этот zip-файл в Parent. Тем не менее, они не могут просматривать, читать и записывать файлы, которые уже находятся в Parent. Кроме того, как только они перемещают zip-файл в Parent, этот файл также становится для них недоступным.

Я хотел бы знать, возможно ли это в окнах, без необходимости делать что-то слишком причудливое. Я мог бы добиться этого, предоставив пользователю доступ на чтение / запись к Parent, но лишив всех их всех прав доступа к файлам в Parent. Единственный реальный вопрос - как мне сделать это автоматически.

1 ответ1

2

Запустите cmd от имени администратора, затем выполните команду

icacls "...\Parent" /grant UserOrGroup:(OI)(CI)(S,WD)

UserOrGroup - имя пользователя или группы

(OI)(CI) означает - это папка, подпапки и файлы.

(S,WD) означает - только Синхронизировать + записать данные / добавить файл.

Но если a есть файл, скажем f1.txt , в папке Parent и пользователь пытается скопировать другой файл с тем же именем (f1.txt), система выдаст предупреждающее сообщение типа «У вас должны быть разрешения ... скопировать в эту папку ". Таким образом, пользователь может обнаружить, что файл f1.txt существует в папке Parent .

Обновить

Сценарий

rem  Create a folder
md "Parent"

rem  Disable ACL inheritance
icacls "Parent" /inheritance:d

rem  Remove all default permissions for Username
icacls "Parent" /remove:g Username

rem  Grant restricted permissions for Username
icacls "Parent" /grant Username:(OI)(CI)(S,WD)

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