我正在创build一个新的Windows 2008R2文件服务器的过程中,并与基于访问的Enumaration有一些问题。
我不只是想迁移所有的数据和权限,因为我们的结构是在过去的15年里发展起来的,说实话这是一团糟。 所以我试图尽可能多的努力。
我build立了一个基于域的DFS-N(Data),其中每个部门(部门1到部门4)的份额都被发布。 在testing时(是的,我们有一个testing环境!幸运的是我们)我偶然发现了一个关于Access Based Emuneration的错误(?)。 许可将通过嵌套不同的许可团体来处理。 我的问题是添加一个用户到一个特定的子目录组不能让他看到/遍历父目录。
在文件共享和DFS-N上启用ABE。
我创build了以下目录结构:
\\DFSRoot\Data\ +---dept1 | +---dir1 | | +---sub1 | | \---sub2 | +---dir2 | +---dir3 | | +---sub1 | | \---sub2 | \---dir4 +---dept2 | +---dir1 | +---dir2 | +---dir3 | \---dir4 +---dept3 | +---dir1 | +---dir2 | +---dir3 | \---dir4 +---dept4 | +---dir1 | +---dir2 | +---dir3 | \---dir4 \---dept5 +---dir1 | +---sub1 | \---sub2 +---dir2 +---dir3 \---dir4 +---sub1 \---sub2
我为每个目录创build了3个组:
所以对于\\ DFSroot \ Data \ dept1这将是
dl-dept1-list dl-dept1-ro dl-dept1-rw
对于\\ DFSroot \ Data \ dept1 \ dir1
dl-dept1-dir1-list dl-dept1-dir1-ro dl-dept1-dir1-rw
而对于\\ DFSroot \ Data \ dept1 \ dir1 \ sub1
dl-dept1-dir1-sub1-list dl-dept1-dir1-sub1-ro dl-dept1-dir1-sub1-rw
对于其他的一切,这个scheme也适用。
对于每个目录,相应的组是下一个上级目录的列表组的成员。 所以
dl-dept1-dir1-sub1-list dl-dept1-dir1-sub1-ro dl-dept1-dir1-sub1-rw
是dl-dept1-dir1-list的成员
inheritance没有被打破。 那些RO / RW组对它们的文件夹和其中的每个子目录都有各自的权限。
列表组具有特殊权限 – > ListDirectory,ReadAttributes,ReadPermissions,Traverse – > 仅此文件夹
如果我将$ User添加到dl-dept1-dir1-sub1-rw以将权限授予\\ DFSroot \ Data \ dept1 \ dir1 \ sub1,则用户可以访问共享dept1 (dl-dept1-list的成员),但没有看到任何目录。 $用户不能通过UNCpath访问dir1。 $用户可以通过UNCpath访问sub1。
如果ABE在共享$用户可以遍历目录没有问题。
在这一点上,我卡住了,没有看到我失踪。
也许你们中的一个人可以帮忙。 提前致谢。
我想到了。 我的问题是缺less特殊权限。 LIST组需要读取 ABE工作的扩展属性 。