Windows权限:访问孩子,但不是在父母?

我试图在服务器共享上创build具有特定权限的文件夹,可以说path是\\ srv \ foo \ dir

  • foo是已经拥有权限的父文件夹。
  • 目录是我设置权限的文件夹。

我有三个组,我已经在下面列出。

  • A – 完全允许访问\\ srv \ foo的组。
  • B – 完全拒绝访问\\ srv \ foo的组。
  • C – 我正在尝试为其添加权限。

我试图让C组能够创build,删除,移动(等)在目录中的文件和文件夹,但没有访问权限或允许在美孚权限。

目前, foo有权授予A组完全访问权限,并拒绝B组访问权限。 C组目前没有任何东西。

我已经尝试closuresinheritance,但即使我已经允许组C完全访问目录我仍然收到访问被拒绝的消息,当试图创build一个文件夹作为组C中的用户。

我听说Windows权限在允许之前会拒绝权限,但是C组没有在foodir中设置任何“拒绝”权限。

有人可以解释我出错的地方,或者如果我对这些权限的工作方式有任何误解,我所做的是(im)可能吗?

谢谢。

这只适用于NTFS的权限,因为我们有一个共享和一个文件夹下的根,共享共享权限,即他们是一样的,我们只谈一个共享!

您需要给组C只traverse folder \\srv\foo上的traverse folder NTFS权限,并在\\srv\foo\diredit权限(或者您曾经想过的)权限。

这样他们可以到达他们的文件夹dir而无需访问foo的内容。

注意永远不要让用户Full control常规的networking共享/文件夹。 他们会(不小心)摧毁你的声音。 在这种情况下,将是一个用户编辑\\srv\foo\otherFileOrFolder的文件/目录许可权,并添加例如所有人。

注2 :尽可能避免否认。 它只有一个非常有限的有效用例。

通常的做法是将Everyone的共享权限设置为完全控制。 然后您使用NTFS来有效地控制该文件夹的所有安全性。

这听起来像你已经在angular色组vs安全组的概念。 为了重申,最佳做法是将用户添加到angular色组(例如Accounting)。 并且安全组被添加到NTFS权限(例如FolderA-ReadWrite)。 然后,您将会计帐户angular色组添加到FolderA-ReadWrite安全组。

对于dir,

  • 共享权限:每个人都完全控制
  • NTFS权限:A组可读写
  • 添加组C作为组A的成员
  • 我将创build另一个需要被拒绝的用户组D,并将该组添加到组B.
    然后添加组B并设置拒绝NTFS权限。
    这是可行的,但最好尽可能避免拒绝。 这没有错,但它可以使故障排除困难得多。 我发现如果可能的话,最好重新安排文件夹结构,这样只允许使用许可证。

这里是关于如何使用共享和NTFS权限的Microsoft文档
共享和文件服务器上的NTFS权限
Quote: "Another approach is to set share permissions to Full Control for the Everyone group and to rely entirely on NTFS permissions to restrict access."

“用户在dir1和dir2上需要的最小权限是Traverse Directory,这对你的用户来说很可能是有问题的 – 所以我build议使用Traverse Directory和List Folders,他们将能够浏览前两个目录并得到dir3他们有更多的权限,但甚至不会看到什么文件存在于前两个目录。

“令人惊讶的是,如果个人拥有至less拥有R权限的子文件夹的完整path,那么他们不需要任何父文件夹的权限,甚至不需要遍历,只需使用UNC就可以访问它(他们必须,当然,对共享有读取权限;只是不在他们想要访问的级别之上的任何文件夹上)。

当我被告知时,我不相信,但testingcertificate了这一点。“

https://superuser.com/questions/520537/give-access-to-a-subdirectory-without-giving-access-to-parent-directories