DFS复制和SYSTEM用户(NTFS权限)

我无法在Google或Technet上find答案的问题…

授予SYSTEM用户对DFS共享文件和文件夹的权限是否对DFS复制有任何影响? (而当我们在这里,有没有什么好的理由不让SYSTEM有权限DFS共享文件?)

它出现是因为我有一个DFS命名空间和文件夹的集合,我无法解决别人的问题,并且在解决一个DFS副本只是没有被另一个DFS副本复制的问题时,我观察到SYSTEM帐户没有任何权限授予任何文件夹中的文件或文件夹。

所以我把SYSTEM设置为完全控制并传播下来,我们的DFS健康状况诊断报告从显示积压的〜80个文件变成积压〜100,000 …并开始复制,包括一些已经在一台服务器或另一台服务器上丢失(所以不仅仅是开始复制的权限更改)。

当然,这让我好奇DFS是否需要SYSTEM帐户有权执行其工作,或者如果可能只是提示DFS跳转到行动的文件夹树的任何更改。 重要的是,我们的DFS命名空间是在2000/2003以下build立的,而且我刚刚完成了将所有服务器升级到2008 R2或2012(启用了UAC,blech)的function,但是还没有到达提升DFS命名空间function级别到Server 2008。

(如果有人有关于NTFS文件权限的正式Microsoft文章以及与DFS或networking文件相关的SYSTEM帐户,则奖励积分。)

technet上的这个线程说系统需要完全控制。 然而,这不是一个非常官方的消息来源, 进一步的testingcertificate这是错误的


DFS复制服务

我使用Process Explorer查看了Server 2008R2机器上的DFS服务。 dfsrs.exe,分布式文件系统复制服务,作为“NT Authority \ SYSTEM”运行。 但是,它具有SeBackupPrivilegeSeRestorePrivilege

dfsrs.exe权限的屏幕截图

从Microsoft特权常量 :

SeBackupPrivilege – 执行备份操作所必需的。 此权限会导致系统将所有读取访问控制权授予任何文件,而不pipe为该文件指定的访问控制列表(ACL)。 除读取以外的任何访问请求仍然使用ACL进行评估。 3

SeRestorePrivilege – 执行还原操作所必需的。 此权限使系统将所有写访问控制权限授予任何文件,而不pipe为该文件指定的ACL如何。 除写入以外的任何访问请求仍然使用ACL进行评估。 此外,此权限使您可以将任何有效的用户或组SID设置为文件的所有者。

通过这些权限,DFS复制服务可以忽略任何文件许可权 – 它可以在任何文件上读取,写入和设置权限。


testing

我在其中一个DFS共享中创build了一个文件夹,其中包含几个文件,将我的帐户设置为所有者,并删除除我的帐户以外的所有权限。

DFS将其复制到所有其他服务器而没有问题,并且所有副本具有相同的权限。

因此,DFS不依赖于任何文件系统权限进行复制。


我怀疑你的情况只是对文件进行任何更改都会导致DFS醒来,看到他们需要复制。 不知道最初会导致这种情况。

根据这篇文章从微软http://support.microsoft.com/kb/120929 “系统帐户和pipe理员帐户(pipe理员组)具有相同的文件权限,但他们有不同的function。

这意味着系统帐户与本地pipe理员相同,并且存在用于以pipe理员权限运行系统服务而不需要密码的目的。 DFS-R中的复制过程是使用此帐户执行的。

系统用户在文件系统或与常规pipe理员不同的DFS设置中没有特殊意义。 但是,由于Windowspipe理员并不总是以pipe理权限运行,这取决于程序或shell的调用方式,而系统帐户可能总是使用升级/pipe理令牌来运行,所以可能会造成混淆。 我想你的DFS设置只是越界,修改ACL可能会导致一些系统调用,或者文件句柄被打开/刷新,震撼了众所周知的蜘蛛网。