我正在尝试在服务器共享上创建具有特定权限的文件夹,假设路径是\\srv\foo\目录。
- 富是已经具有权限的父文件夹。
- 目录是我正在设置权限的文件夹。
我有三个组,已在下面列出。
- A- 对 \\srv\foo 具有完全访问权限的组。
- 乙- 拒绝具有对 \\srv\foo 的完全访问权限的组。
- C- 我正在尝试为其添加权限的组。
我正在努力C 组能够创建、删除、移动(等等)文件和文件夹目录,但没有访问权限或允许权限富。
现在,富有权限授予A 组完全访问,并拒绝B 组所有访问权限。目前没有C 组。
我曾尝试关闭继承,但即使我允许C 组完全访问目录当我尝试以用户身份创建文件夹时,仍然收到拒绝访问消息C 组。
我听说 Windows 权限值在允许之前拒绝权限,但是C 组没有设置任何“拒绝”权限富或者目录。
有人可以解释一下我哪里做错了吗,或者我对这些权限的工作方式有任何误解,以及我正在做的事情是否(不)可能?
谢谢。
答案1
这仅适用于 NTFS 权限,因为我们拥有共享的根目录和其下的文件夹,并且它们共享分享权限,即它们与我们只讨论一个共享相同!
您只需要授予组 Ctraverse folder
对 的 NTFS 权限\\srv\foo
和edit
对 的权限(或您想授予的任何权限)\\srv\foo\dir
。
这样,他们dir
无需访问 的内容即可到达他们的文件夹foo
。
笔记:绝不为常规网络共享/文件夹上的用户提供Full control
权限。他们会(意外地)破坏您的 acl。在这种情况下,用户将编辑文件/目录权限\\srv\foo\otherFileOrFolder
并添加例如所有人。
笔记2:尽可能避免拒绝。它的有效用例非常有限。
答案2
常见的做法是将 Everyone 的共享权限设置为完全控制。然后,您可以使用 NTFS 有效地控制该文件夹的所有安全性。
听起来你已经了解了角色组与安全组的概念。重申一下,最佳做法是将用户添加到角色组(例如会计)。并将安全组添加到 NTFS 权限(例如 FolderA-ReadWrite)。然后,您将会计角色组添加到 FolderA-ReadWrite 安全组。
对于目录,
- 共享权限:所有人-完全控制
- NTFS 权限:具有读/写的 A 组
- 将组 C 添加为组 A 的成员
- 我将创建另一个需要拒绝的用户组 D,并将该组添加到组 B。
然后添加组 B 并设置拒绝 NTFS 权限。
这会起作用,但最好尽可能避免拒绝。这没有错,但它会使故障排除变得更加困难。我发现最好重新安排文件夹结构(如果可能),以便只使用许可。
这是有关如何使用共享和 NTFS 权限的 Microsoft 文档
文件服务器上的共享和 NTFS 权限
引用:"Another approach is to set share permissions to Full Control for the Everyone group and to rely entirely on NTFS permissions to restrict access."
答案3
“用户对 dir1 和 dir2 所需的最低权限是“遍历目录”。但这很可能给您的用户带来麻烦 - 因此我建议使用“遍历目录”和“列出文件夹”。他们将能够浏览前两个目录并到达他们拥有更多权限的 dir3,但甚至看不到前两个目录中存在哪些文件。”
“令人惊讶的是,如果个人拥有至少具有 R 权限的子文件夹的完整路径,他们就不需要任何父文件夹的权限,甚至不需要遍历。他们只需使用 UNC 即可访问它。(当然,他们必须具有共享的读取权限;只是不需要他们想要访问的级别以上的任何文件夹的读取权限)。
当我被告知这一点时我并不相信,但测试证明了这一点。”