Windows Server(任何版本),带有子文件夹的共享文件夹,如下所示:
Department1
Jim
John
其中 Department1 是网络共享,Jim / John 是子文件夹。
我想要的是只有Jim 对“Jim”文件夹具有写访问权(即只有Jim 可以在Jim 子文件夹中创建文件和文件夹),并且只有John 对“John”文件夹具有写访问权。
听起来很容易,但我找不到这样做的方法。
以下是权限的设置方式:
Folder "Department1"
share permissions: Everyone - Change + Read
NTFS permissions: Jim - List Folder Contents
John - List Folder Contents
Subfolder "Jim"
NTFS permissions: Jim - Full Control
Subfolder "John"
NTFS permissions: John - Full Control
会发生什么:
- 在父共享文件夹“Department1”中,Jim 和 John 都可以创建、编辑、修改和读取任何文件和文件夹。
- Jim 可以创建、编辑、修改和读取他自己以及 John 文件夹中的任何文件和文件夹
- John 可以创建、编辑、修改和读取他自己以及 Jim 的文件夹中的任何文件和文件夹
(我从“有效权限”工具以及简单地以 Jim 身份登录并尝试它时都看到了这个结果)。
应该发生的是 - 没有人可以在父文件夹中创建文件,而 Jim 不应该能够在 John 的文件夹中创建/修改文件 + 反之亦然。
如果我从父文件夹中取出“列出文件夹内容”权限,Jim 和 John 都无法访问该共享。但是 - 问题是:仅仅添加 LIST FOLDER 权限似乎赋予了两个用户创建、读取和修改文件和文件夹的权利......?这怎么可能是正确的或合乎逻辑的?
继承似乎与它没有任何关系 - 通常您可以看到继承的用户和属性显示在子文件夹中,并且它们会变灰,因为它们无法更改 - 事实并非如此。(启用继承。)
将 Jim 和 John 作为单独的共享共享可以处理它,但我不希望这样 - 示例已简化,实际上有数百个,它会导致来自网络的“扁平”非分层视图,我必须避免。
为不打算访问该文件夹的所有“其他”用户添加 DENY 条目将非常笨拙 - 有数百个。
所以我的问题:
为什么会这样?这不合逻辑——一旦我授予 NTFS 访问列表文件夹内容的权限,该用户也可以读取、写入、修改文件和文件夹——应该是这样吗?
有没有一种简单的方法来配置它,使其按预期工作?我正在考虑关闭继承 - 但我希望他自己创建的 Jim 的任何子文件夹都继承 Jim 文件夹的权限,即使在共享上关闭了继承,这种情况会发生吗?
编辑
假设访问上述示例中的文件夹总是从客户端计算机通过网络访问文件共享。(我知道如果 Jim / John 会在本地登录文件服务器,情况会有所不同,但这不是我的问题。)
更新
根据 Evan Anderson 的评论,我检查了所有权限,发现一个从磁盘驱动器本身的安全权限继承的条目。这是“服务器\用户”的“特殊权限”条目,我理解它是指该服务器的本地用户。该条目提供“创建文件”和“创建文件夹”访问权限,并继承到我的 Department1 和 Jim/John 文件夹。
我没有创建那个条目。它似乎是 Windows 在我查看的每台服务器上的每个磁盘驱动器上创建的默认条目。
删除该条目会更改 Jim 和 John 在 Department1 文件夹和子文件夹上的有效权限,因此错误的 CreateFolder 和 CreateFile 权限不再适用——这正是我想要的。感谢埃文·安德森。
但是,这提出了两个新问题:
server\Users 条目适用于什么?我的理解似乎是错误的,这仅适用于服务器的本地用户。Jim 和 John 是域登录名,并且不作为服务器上的本地用户存在。那么 Server\Users 适用于服务器的任何和所有用户是否正确,无论是从网络登录还是作为服务器上的本地用户存在?
似乎每个磁盘驱动器都有这个特殊权限条目,然后继承到该驱动器上的所有文件夹 - 让每个驱动器都具有默认条目的服务器\用户组的 CreateFile 和 CreateFolders 的目的是什么?对我来说,这听起来像是一个巨大的隐形陷阱,让每个人都试图在 Windows 共享上设置适当的权限。(如果属实,任何教程都应该以“从磁盘驱动器中删除 Server\Users 权限条目”开始。)
更新 2
我在MSDN上找到了有关 Server\Users 组的以下数据
“当计算机加入域时,域用户组被添加到计算机上的用户组中。”
这意味着 Jim 和 John 是 Server\Users 组的一部分,这就是这些权限适用的原因。所以我回答了问题 3,但问题 4 仍然存在——它背后应该有一些意义吗?