我想要类似以下的东西:
有一个文件夹,我们称之为“父级”。
我希望人们能够将文件添加到父级,但我不希望他们能够查看/读取/写入父级中的文件。
例子:
用户有一个 zip 文件。他们可以将该 zip 文件放入父级。但是,他们无法查看、读取或写入父级中已有的任何文件。此外,一旦他们将 zip 文件移动到父级,他们现在也无法访问该文件。
我想知道这是否可以在 Windows 中实现,而无需执行任何操作也太棒了。我可以通过允许用户对 Parent 具有读/写访问权限来实现这一点,但剥夺他们对 Parent 内文件的所有权限。唯一真正的问题是我如何自动执行此操作。
答案1
以管理员身份运行cmd
,然后执行命令
icacls "...\Parent" /grant UserOrGroup:(OI)(CI)(S,WD)
UserOrGroup
- 用户或组名称
(OI)(CI)
意思是 - 此文件夹、子文件夹和文件。
(S,WD)
意思是 - 仅同步+写入数据/添加文件。
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)