LocalSystem 帐户
LocalSystem 帐户是服务控制管理器使用的预定义本地帐户。 安全子系统无法识别此帐户,因此无法在对 LookupAccountName 函数的调用中指定其名称。 它在本地计算机上具有广泛的特权,并充当网络上的计算机。 其令牌包括 NT AUTHORITY\SYSTEM 和 BUILTIN\Administrators SID;这些帐户有权访问大多数系统对象。 所有区域设置中的帐户名称为 .\LocalSystem。 也可以使用名称、LocalSystem 或 ComputerName\LocalSystem。 此帐户没有密码。 如果在调用 CreateService 或 ChangeServiceConfig 函数时指定 LocalSystem 帐户,则忽略提供的任何密码信息。
在 LocalSystem 帐户的上下文中运行的服务继承 SCM 的安全上下文。 用户 SID 是从 SECURITY_LOCAL_SYSTEM_RID 值创建的。 该帐户不与任何登录用户帐户相关联。 这有几个含义:
- 注册表项 HKEY_CURRENT_USER 与默认用户(而不是当前用户)相关联。 若要访问其他用户的配置文件,请模拟用户,然后访问 HKEY_CURRENT_USER。
- 该服务可以打开注册表项 HKEY_LOCAL_MACHINE\SECURITY。
- 该服务向远程服务器提供计算机的凭据。
- 如果服务打开命令窗口并运行批处理文件,则用户可以按 Ctrl+C 终止批处理文件,并获取对具有 LocalSystem 权限的命令窗口的访问权限。
LocalSystem 帐户具有以下权限:
- SE_ASSIGNPRIMARYTOKEN_NAME(已禁用)
- SE_AUDIT_NAME (已启用)
- SE_BACKUP_NAME(已禁用)
- SE_CHANGE_NOTIFY_NAME(已启用)
- SE_CREATE_GLOBAL_NAME(已启用)
- SE_CREATE_PAGEFILE_NAME(已启用)
- SE_CREATE_PERMANENT_NAME (已启用)
- SE_CREATE_TOKEN_NAME(已禁用)
- SE_DEBUG_NAME(已启用)
- SE_IMPERSONATE_NAME (已启用)
- SE_INC_BASE_PRIORITY_NAME(已启用)
- SE_INCREASE_QUOTA_NAME(已禁用)
- SE_LOAD_DRIVER_NAME(已禁用)
- SE_LOCK_MEMORY_NAME(已启用)
- SE_MANAGE_VOLUME_NAME(已禁用)
- SE_PROF_SINGLE_PROCESS_NAME(已启用)
- SE_RESTORE_NAME(已禁用)
- SE_SECURITY_NAME(已禁用)
- SE_SHUTDOWN_NAME(已禁用)
- SE_SYSTEM_ENVIRONMENT_NAME(已禁用)
- SE_SYSTEMTIME_NAME(已禁用)
- SE_TAKE_OWNERSHIP_NAME(已禁用)
- SE_TCB_NAME(已启用)
- SE_UNDOCK_NAME(已禁用)
大多数服务不需要如此高的特权级别。 如果服务不需要这些特权,并且不是交互式服务,请考虑使用 LocalService 帐户 或 NetworkService 帐户。 有关详细信息,请参阅 服务安全和访问权限。