但你还是得跑

但你还是得跑

在我的 Windows 7 上,我创建了一个用户,BackupUser5并将他添加到“备份操作员”组。通过设计

此组的成员可以备份和恢复计算机上的文件,无论保护这些文件的权限如何。这是因为执行备份的权限优先于所有文件权限。此组的成员无法更改安全设置。

我以提升模式(提升BackupUser5权限)运行 Windows“备份和还原”。然后,我按下“立即备份”按钮(如下所示)。Windows 要求输入凭据,我输入了凭据BackupUser5。结果如下:

在此处输入图片描述

如上所示,我收到了拒绝访问的消息。我不知道为什么?(当然,如果我使用管理员凭据,就不会收到错误。问题是,为什么“备份操作员”成员不能这样做。)

答案1

如果您确实在寻找增量解决方案,这个答案可能没有多大帮助,但如果您可以满足于系统映像,则 wbadmin 命令行工具可以做到:http://technet.microsoft.com/en-us/library/cc742083.aspx

由于某种原因,GUI 版本需要完全管理员权限,但命令行不需要。只需确保运行提升的提示符(在 cmd.exe 上以管理员身份运行...,即使它只是为了获得备份操作员权限)。到目前为止,我还无法使用这些权限(仍然需要管理员权限)进行系统映像还原,但我没有尝试太多。您也无法安装备份映像 (.vhd),但可以使用第三方工具(我使用 7-zip,可能还有其他几个)打开它来恢复文件。

答案2

这里发生了两件不相关的事情。

通常情况下,NTFS 权限会阻止其他用户读取您的文件。为了让其他人能够读取您个人资料中的文件,您必须修改“访问控制列表”(ACL)授予他们读取权限:

在此处输入图片描述

但这意味着为了备份计算机上的所有文件,运行备份的用户需要获得Read权限:

  • 到每个文件
  • 在每个文件夹中
  • 在每个个人资料中

这真的很痛苦;而且不是你真正想做的事情。

输入备份权限

幸运的是,Windows NT 创建了一种方式肯定用户能够绕过所有 NTFS ACL 安全检查,读取他们没有权限读取的文件,以便他们可以备份它们。

这是一个特别的“特权”称为SeBackupPrivilege

SE_BACKUP_NAME

执行备份操作所需。此权限使系统授予对任何文件的所有读取访问控制权,无论访问控制列表(ACL)为文件指定。除读取之外的任何访问请求仍将使用 ACL 进行评估。此权限由注册保存键注册表保存密钥函数。如果拥有此权限,则授予以下访问权限:

  • 读取控制
  • 访问系统安全
  • 文件_通用_读取
  • 文件遍历

用户权限:备份文件和目录。

如果你有此权限,那么当你尝试打开一个文件时,你将绕过所有 NTFS 安全检查“备份模式”。当备份软件尝试打开文件时,它会包括FILE_FLAG_BACKUP_SEMANTICS旗帜:

文件标志备份语义

正在打开或创建文件以进行备份或恢复操作。系统确保调用进程在以下情况下覆盖文件安全检查:SE_BACKUP_NAME恢复名称特权。

授予备份文件和目录特权

特权被授予用户或组。Windows 附带一个已经拥有特权的组SeBackupPrivilege(又称“备份文件和目录”) 权限已启用:

  • 团队名字: 备份操作员
  • SIDS-1-5-32-551
  • 描述:内置组。默认情况下,该组没有成员。备份操作员可以备份和恢复计算机上的所有文件,无论保护这些文件的权限如何。备份操作员还可以登录计算机并将其关闭。

secpol.msc您可以通过运行并浏览到以下内容来查看分配给该组的权限:

  • 安全设定
    • 当地政策
    • 用户权限分配
      • 备份文件和目录 在此处输入图片描述

这个特权非常强大,你不会想随意将它授予用户;这就是为什么它只授予一个备份操作员团体。

因此,现在如果您正在运行备份软件,您只需确保该软件以具有以下用户身份运行SeBackupPrivilege(即是备份操作员) 组。然后您的备份软件就可以完成备份文件的工作了。

但你还是得跑

大多数备份软件只需运行即可。或者,您也可以按计划任务运行它。

但 Windows 备份不仅仅是你运行的一个程序;它是一个服务. 并且为了启动、停止或配置服务你(通常)必须是管理员团体。

这就是你在这里被阻止的原因。你正在看一个特定的备份软件,它發生决定将自身安装为服务,并且發生决定你需要成为一个行政人员进行配置。

并且备份操作员没有启动/停止服务的 ACL 权限。

这就是让你困惑的地方。

  • 备份操作员只能绕过 NTFS ACL 检查
  • 他们无法启动/停止/配置服务

答案3

  • 运行 SysInternals 的进程浏览器
  • 选择正在运行备份的进程
  • 右键单击并选择属性
  • 在“安全”选项卡上,确认列出了 SeBackupPrivilege。

您还应该运行 gpresult /h 并确认“作为批处理作业登录”权限实际上已分配给备份操作员,而“拒绝作为批处理作业登录”权限则没有。

答案4

我还没有仔细检查,但我相信 UAC 阻止了它的运行。我认为您需要以管理员身份使用该帐户才能正常运行,即使 UAC 已禁用(但您可以尝试禁用 UAC 并查看它是否会突然起作用)。备份操作员组将拥有有权备份文件和规避文件安全性的用户,但它不一定会授予他们以提升的权限运行计划任务或程序的权限。这个想法是,如果您将某人放在远程 PC 上的备份操作员组中,您可以远程运行备份作业,该作业将连接到该 PC 并有权备份其文件。

(但是,问题本身更适合 superuser.com,因此我投票将其迁移到那里,即使我的“答案”被发现是正确的)

相关内容