![共享驱动器的高级安全权限](https://linux22.com/image/1430442/%E5%85%B1%E4%BA%AB%E9%A9%B1%E5%8A%A8%E5%99%A8%E7%9A%84%E9%AB%98%E7%BA%A7%E5%AE%89%E5%85%A8%E6%9D%83%E9%99%90.png)
我有一个大型共享驱动器,其中包含一些文件夹,这些文件夹是在将客户端添加到我们使用的软件时自动创建的。我想允许用户访问驱动器顶层的文件夹,但不能写入、编辑、删除或移动任何这些文件夹(只读)。我还希望他们能够以完全读/写权限访问驱动器顶层文件夹下面的文件夹。
例如:
Drive X: (shared drive)
|
+-- 1. Top Folder 1 (read only)
| |
| +-- lower folder/files (read/write)
| |
| +-- lower folder/files (read/write)
|
|
+-- 2. Top Folder 2 (read only)
| |
| +-- lower folder/files (read/write)
| |
| +-- lover folder/files (read/write)
我如何实现这个目标?
答案1
你可以通过我所说的方法来实现你的目标顶级文件夹权限。
概括
- 在驱动器的根目录下,授予读将权限授予用户,并流向整个驱动器中的所有子文件夹和文件。
- 在根驱动器中的每个“顶级”文件夹上,应用授予用户的特殊权限调整对文件夹内容(所有文件和子文件夹)的权限,但不是到顶层文件夹本身。
实施步骤
- 在根驱动器上,授予
Everyone
(或您选择的另一个组)标准读权限 - 或者,在根驱动器上,考虑确保
SYSTEM
并被Administrators
授予完全控制,然后删除所有其他权限(例如授予CREATOR OWNER
或 的权限Users
) - 在每个顶层文件夹中:
- 授予
Everyone
群组调整权限,然后在高级安全设置中编辑该权限分配以应用于仅限子文件夹和文件 - 仍在高级安全设置中,再输入一项,授予该
Everyone
组以下特定权限,并将其应用于仅限此文件夹:- 创建文件/写入数据
- 创建文件夹/附加数据
- 授予
- 重复步骤#3每个顶级文件夹
怎么运行的
#1 的效果是授予你的安全组读取驱动器上所有内容的权限。
#3 的效果是授予你的安全组修改顶级文件夹的所有子对象的权限没有授予他们修改顶级文件夹本身的权限。这不足以允许他们在顶级文件夹中创建任何内容,因此需要额外的明确“创建”权限。
应用于多个顶级文件夹
上述步骤 3 中的权限必须应用于每个“顶级”文件夹。如果您有许多文件夹,这可能会很耗时。可以使用为了和加拿大临床神经外科学会在提升的命令提示符中运行:
For /D %f In (C:\*.*) Do ICACLS "%f" /grant "Everyone":(OI)(CI)(IO)(M)
For /D %f In (C:\*.*) Do ICACLS "%f" /grant "Everyone":(WD,AD)
如图所示,这两个命令将修改中的所有子文件夹,C:\
以将步骤 3 中概述的权限授予Everyone
组。修改这两个元素以满足您的需求。在生产系统运行之前先进行测试!