我注意到用户文件夹 C:\Users\User-Name-Here 显示所有者为管理员(PC-NAME\Administrators)。
其他用户文件夹显示文件夹所有者为系统。
这是正常的吗?如果是,那么所有权由什么决定?例如,谁拥有域用户的本地文件夹,谁拥有本地非域 PC 用户的本地用户文件夹。
有一些行为差异引发了人们的担忧:
在用户上我注意到这一点是因为我正在导出并保存 Windows Defender 防火墙策略,而“保存”对话框没有图标。
从记事本保存 hello-world.txt 文件,是一个可以看到图标的正常对话框。
除非有一些权限 foobar 正在进行,否则这不可能是正确的,不是吗?
看来所有权可能会导致安全混乱/问题。
答案1
在 Windows 初始设置期间在系统上创建的第一个帐户将“SYSTEM”作为目录的所有者C:\Users\usnerame\
,因为当时还没有管理员可以创建该帐户。随后创建的用户将“Administrators”作为所有者:因为他们是由管理员创建的。
默认情况下,所有者是创建对象的人或进程。所有者始终可以更改对象的权限,即使他们被拒绝对该对象进行任何访问。
来源:Windows 学习页面
您可以通过右键单击文件夹并选择:属性 -> 安全 -> 高级来更改所有者。然后单击“所有者”指示旁边的“更改”。参见屏幕截图。
在屏幕截图中,右侧的“Y..”是系统上创建的第一个用户。从该用户开始,我创建了 admin2
答案2
默认情况下,管理员组中的用户创建的文件夹/文件的所有者将归管理员组所有,但不属于管理员组的用户创建的文件夹归该特定用户所有。此行为可在组策略中配置,我认为从 Windows 10 开始,他们开始确保用户创建的所有文件(特别是由人类创建的用户,而不是系统用户)都归创建者所有,但我可能错了...
由于我没有这样的设置来确认,因此现在不确定域用户是否如此。
但是,C:\Users 不仅仅包含用户配置文件,还有“所有用户”(或“公共”)和可能的“默认用户”(取决于 Windows 版本),它们分别是共享文件和用户配置文件模板。这些可以由某些系统用户(如 System)拥有。
任何文件/文件夹创建后,所有权都可能发生变化,因此无论何时创建,用户配置文件文件夹都无法归属于正确的用户/组。如果您有权限(例如,如果您是管理员),您可以随时自行更改它。只要您不将拒绝的权限添加到您自己的用户配置文件中,您就没问题。警告递归更改所有权可能需要很长时间。
从安全角度来看,如果您问“谁应该”(意思是您想自己更改),那么首选方法是“保持原样”。对于共享系统,将用户配置文件文件夹的所有者更改为相应的个人用户也应该不错。请记住,权限不足以为您提供安全性:任何管理员用户都可以覆盖这些权限,并且任何具有物理访问权限的人都可以通过启动到不同的操作系统轻松规避这一点。
答案3
文件夹所有权的问题C:\Users\username
在于新创建的用户帐户直到首次登录时才完整。
创建新帐户时,C:\Users\username
即使创建帐户时设置了密码(创建帐户时不需要密码),文件夹也尚未创建。
账户在用户首次登录时确定,然后在流程开始时创建文件夹。此时不能将用户标记为所有者,因为这需要使用用户的密码来创建其账户令牌,而密码可能尚未创建。
因此 Windows 需要尽可能地设置所有者,第一个管理员的所有者为“系统”,后续管理员的所有者为“管理员”。这种差异没有具体原因,只是 Windows 开发人员决定的。
此文件夹的子文件夹(例如文档和图片)是在创建或指定密码并完成登录后创建的。它们可以在那时被标记为用户所有,因为那时用户的帐户令牌已经创建(并且只要登录会话持续,它们就会一直可用)。
造成这一整体所有权问题的原因是 Windows 不允许自己在内部使用用户的密码,而是要求用户输入密码。当用户无法输入密码时,Windows 将使用始终可以访问的帐户,例如系统/管理员。
看 这个答案 我的一个示例显示,系统/管理员不是真正的帐户,只是众所周知的安全标识符 (SID),没有密码可用。然后 Windows 可以自由使用这些伪帐户。