授予对子目录的访问权限,但不授予对父目录的访问权限

all*_*tic 16 ntfs symbolic-link windows-server-2003 junction

我有一个涉及 Windows 文件服务器的场景,其中“所有者”想要向以下类型的一组用户发放权限:

  • \\server\dir1\dir2\dir3: 读、写和执行
  • \\server\dir1\dir2: 没有权限
  • \\server\dir1: 没有权限
  • \\server: 读取并执行

根据我的理解(更新:这整个段落是错误的!),这是不可能的,因为必须向目录链中的所有父目录授予Read & Execute权限,以便操作系统能够“看到”子目录目录并获取它们。如果没有此权限,您甚至无法在尝试访问嵌套目录时获取安全上下文令牌,即使您对子目录具有完全访问权限。

我们正在寻找解决此问题的方法,而无需将数据从 移动\\server\dir1\dir2\dir3\\server\dir4

我想到的一种解决方法,但我不确定它是否有效,是创建某种链接或连接点\\server\dir4,它是对\\server\dir1\dir2\dir3. 如果用户没有Read & Execute权限\\server\dir1\dir2\\server\dir1,我不确定哪些可用选项(如果有)适用于此目的,但据我所知,这些选项是:

  • NTFS 符号链接,
  • 交界处,
  • 硬链接。

所以问题:

  • 这些方法中的任何一种都适合实现我的目标吗?
  • 是否有其他链接或间接引用目录的方法(我没有在上面列出),这可能是合适的?
  • 是否有任何直接的解决方案,不涉及发放Read & Execute\\server\dir1\\server\dir2,但仍允许访问\\server\dir1\dir2\dir3

MDM*_*rra 18

你最初的假设是错误的,这使得你的问题的其余部分没有实际意义。

,用户需要在最低权限dir1dir2Traverse Directory。不过,这很可能会给您的用户带来问题 - 所以我会推荐Traverse Directory List Folders. 他们将能够浏览前两个目录并到达dir3他们拥有更多权限的地方,但甚至看不到前两个目录中存在哪些文件。

Read & ExecuteModify一样的权限只是个人权限的集合。它们是您首先看到的东西,因为它们是最常用的。如果您需要非常细化(例如这种情况),请单击Advanced按钮并深入了解此处列出的选项。


小智 12

令人惊讶的是,如果个人拥有至少具有 R 权限的子文件夹的完整路径,则他们不需要对任何父文件夹的权限,甚至不需要遍历。他们可以使用 UNC 简单地访问它。(当然,他们必须对共享具有读取权限;只是不能在他们想要访问的级别以上的任何文件夹上)。

当我被告知时,我不相信这一点,但测试证明了这一点。

这与我所认为的 Windows 世界中的权限相反,我怀疑这会让许多人感到惊讶。

\服务器\文件夹1\文件夹2\文件夹3

如果 Bilbo 在文件夹 1 和文件夹 2 上根本没有权限,但比尔博对文件夹 3 进行了修改(例如),\server\folder1\folder2\folder3 会将他带到那里,没问题。

  • 要添加到此答案,这种隐式“能力”可以遍历父文件夹到子文件夹(无论深度如何),您有权访问该子文件夹,这是由组策略中默认为大多数/所有用户授予的名为“绕过遍历检查”的用户权限授予的在多数情况下。请参阅http://www.itprotoday.com/management-mobility/how-use-bypass-traverse-checking-user-right,因为我无法在此处粘贴足够的内容来捕获在什么情况下获得许可的列表。 (2认同)