在 Windows > 属性 > 高级 > 更改权限 > 添加中右键单击文件或文件夹
Windows 将提示您添加特定的对象名称。到目前为止,我从各种视频和指南中只知道以下四个:
管理员
系统
所有人
用户
这些对象名称(或组)各自属于什么?还有其他“特殊”对象名称吗?这些对象名称是否仅适用于在 Windows 中设置文件权限?
答案1
有许多不同的类型 - 它们不一定代表单个对象,而是“安全标识符”(SID)。您可以在此对话框中输入一些类型:
- 用户账户名(用户名或者全名都可以)。
- 组名(例如“管理员”、“用户”、“备份操作员”等内置组,以及通过 lusrmgr.msc 创建的自定义组)。
- 计算机(仅在 Active Directory 网络中)。当计算机 A 上的系统服务想要访问计算机 B 上的资源时,它没有自己的用户帐户,因此它将使用该计算机的“机器帐户”。
- 特殊的内置用户,例如代表系统服务的“SYSTEM”(有点类似于 Linux 上的 root)。
- 登录指标,例如“INTERACTIVE”(由所有交互式会话获得,即通过控制台或远程桌面登录时)、“NETWORK”(由通过文件共享的所有登录获得,或通过 WinRM/SSH 的无密码登录获得)、“BATCH”(任务计划程序计划的任务)。
- 虚拟的“知名组”,例如“所有人”(现在基本上等同于“经过身份验证的用户”)、“本地用户”(即不是 Active Directory 用户)等等。
- 模板主体(例如“创建者所有者”)本身不执行任何操作,但在继承过程中会扩展到实际用户。例如,如果文件夹授予“创建者所有者”修改权限,并且您在其中创建了一个文件,那么您的帐户将被授予修改权限。
如果您单击“高级”,您将看到一个搜索窗口,其中列出了上述大部分内容。
Windows 会将输入的名称转换为 SID(安全 ID),但甚至可能有一些具有 SID 并显示在访问控制列表中的实体,而您实际上无法在此窗口中输入这些实体。
例如,每个系统服务也有自己的 SID(与“SYSTEM”分开),如果我没记错的话,通过 Microsoft Store 安装的每个应用程序也都有自己的 SID。
进程将同时通过多个 SID 获得权限 - 例如,如果您运行 Notepad.exe,它当然会具有您的“用户”SID,但它也会具有您所属的所有组的组 SID;它还会具有“INTERACTIVE”SID、“Everyone”SID 等等。(诸如whoami /groups
、ProcExp 或 Process Hacker 之类的程序可以显示这一点。)