NTFS共享:允许文件读取,拒绝列表文件夹

如何在Windows NTFS共享上设置权限,以便用户(在AD组中)

1)可以读取该共享上的任何文件,如果他们知道该文件的完整path

2)不能浏览/列出该共享上的任何文件夹

这个想法是使用文件path作为文件的“访问令牌”。

跳过遍历检查用户权限是允许用户访问path中的文件,但path中没有权限的path除了具有明确权限的文件/文件夹之外。 默认情况下,Everyone安全组被授予此权限。 所有你需要做的是给予用户你想要访问的文件的权限。 如果他们知道这些文件的完整path,他们可以直接访问这些文件。

这是最终为我工作的解决scheme,在@joequerty的帮助下,我指出了正确的方向:

假设要共享一个文件夹sh

1)共享文件夹sh“只读”给所有人(\\ host \ sh)

2)为每个人授予sh的读/执行权限,但只适用于文件。

假设我们在sh \ a \ b \ c \ f.txt中有一个文件

3)只给(直接父母)文件夹c

读取/执行,读取和列出每个人的文件夹权限并仅适用于此文件夹

现在,每个人都可以访问\\主机\ sh \ a \ b \ c \ f.txt

dir \\ host \ sh \ a \ b \ c会列出f.txt

dir \\主机\ sh \ a \ b和更高的地方将无处可去