我目前正在使用 Windows Server Backup,并尝试使用非特权帐户运行计划备份。
我想创建服务器的完整备份
exchange.dom.example.com
。我创建了一个新的域用户“备份”,我想用它来执行这项任务。
我创建了一个名为“DFS”的存储位置
\\dom.example.com\Backup\Exchange
,我想将备份写入其中。它指向
storage0.dom.example.com
名为\\storage0.dom.example.com\Exchange
我授予用户“备份”对 SMB 共享的完全访问权限
\\storage0.dom.example.com\Exchange
。
现在,混乱就从这里开始了。我将“Backup”添加到域控制器上的“Backup-Operators”组,但 Server Backup 不允许我创建备份作业。因此,我用自己的用户帐户创建了该作业,并尝试稍后更改计划任务。当我尝试将用户切换到“Backup”时,它告诉我“Backup”无权登录系统。
因此,我在当地的“Backup-Operators”组。现在我可以正常创建任务了。但运行时,它会失败并显示错误代码2155348039
,告诉我它无法写入目标位置。
当我将“备份”添加到“管理员”组时,一切都运行正常。所以我必须假设这是一个与权限相关的问题。但我还必须设置哪些其他权限?
我还用进程监视器仔细检查了错误。尝试写入 DFS 位置时ACCESS_DENIED
捕获了一个错误。wbengine.exe
\\dom.example.com\Backup\Exchange\TempFile.tmp
我也尝试过简单地设置不使用 DFS 的备份(通过直接写入 SMB 共享),但这会导致同样的问题。
我还启动了命令提示符作为“备份”,exchange.dom.example.com
然后pushd
进入\\storage0.dom.example.com\Exchange
。这是我唯一无法写入的地方。我可以正常写入任何子文件夹。只是不能写入Exchange
。
答案1
我赞扬你努力坚持最小特权原则。但我认为我知道你哪里偏离了轨道。你说:
我将“Backup”添加到域控制器上的“Backup-Operators”组
AD 中的内置容器包含的组本质上类似于所有域控制器的共享本地组。将用户添加到 AD 用户和计算机中的备份操作员内置组只会为该用户提供域控制器上的备份操作员权限。因此,它不会对域中的非 DC 服务器产生任何影响。
来源: http://technet.microsoft.com/en-us/library/cc756898(v=ws.10).aspx
例如,备份操作员组的成员有权对所有域控制器在域中。
您使用的帐户应是每台服务器上备份操作员本地组的成员 - 正在备份的服务器和托管将保存备份的共享的服务器。根据文档,仅凭这一点就应该允许备份用户帐户访问执行备份所需的文件,而不管他对正在备份的文件的文件权限如何。
现在,作为托管文件共享的计算机上的 Backup Operators 本地组的成员,可能不会授予他将备份写入共享的写入权限,因此您需要相应地授予这些权限。我建议授予备份用户完全控制共享权限,但只授予 NTFS 级别的读/写权限。