什么是“NT AUTHORITY”和“NT SERVICE”

什么是“NT AUTHORITY”和“NT SERVICE”

我可以找到很多关于什么是“NT AUTHORITY”的信息削减“某物”。“NT SERVICE”也是一样。但斜线之前的部分不是。我在工作中不时遇到它们。我可能会收到文档,例如域管理员,有时包括来自这两个“位置”(NT AUTHORITY\SYSTEM 或 NT SERVICE\MSSQLSERVER)的用户。所以我理解他们是某种标准用户。

所以我实际上想了解斜线前面的核心内容是什么。它是否以某种方式与 Windows NT 相关联,因为它似乎不是这样?那些“NT”字母到底是什么?授权和服务是同一级别的东西吗?

答案1

如果您愿意对定义稍作改动,NT_AUTHORITY 本质上是指 Windows 操作系统本身。或者可能是“操作系统代表您授权的事物”。

(起初,NT 代表新技术,是一种通常用于企业的操作系统版本。它与 Windows 98、98 和更早版本中使用的不太严格、不太安全的 Windows 9.x 内核形成对比。从 Windows 2000 开始,各个版本合并为基于 Windows NT 4 的版本。这些版本最终发展成为 Windows Vista、7、8.x 和即将发布的 10。

“NT”令牌基本上是早期遗留的令牌。您可以将其视为 Windows 本身的替代品。更正式地说,它是一组处理后台任务和维护操作的服务用户的父级。

斜线右侧的标记表示操作系统的各个内部服务“用户”。例如,NT AUTHORITY\SYSTEM 处理系统服务,NT AUTHORITY\LOCAL SERVICE 处理本地服务,NT AUTHORITY\NETWORK SERVICE 处理网络服务,等等。更多背景信息可参见此主题以及MSDN 的各个位置。创造性地使用您喜欢的搜索引擎可以帮助您找到更多信息。

本质上,代表服务运行的是同一件事,服务本质上是在后台运行的实用程序。(例如,BITS 服务在后台下载更新。)有很多服务在运行,使用 NT_SERVICE 令牌将它们与其他服务区分开来。这里一篇文章这涉及到一些技术细节。(不过,除非你确切知道某项服务的用途,否则我不会关闭它。这很容易把事情搞砸。)

答案2

更技术性的解释:

在 Windows ACL(访问控制列表)中,权限适用于受托人- 用户、组或其他安全主体。

受托人的唯一标识是SID, 哪个是以以下字符串开头S-1-并且可以格式化为人类可读的字符串,NT AUTHORITY\SYSTEM例如S-1-5-18

无论是谁提出 Windows NT 的这种设计,他的目的都是让它相当通用

有一些通用的知名 SID,它们很有意义在所有使用此安全模型的安全系统上,包括 Windows 以外的操作系统另外,还有一些知名的SID只在Windows系统上才有意义。

他们提出了一些通用权限,例如SECURITY_WORLD_SID_AUTHORITY( S-1-1),它只产生一个 SID,S-1-1-0表示“所有人”;但大多数使用的 SID 都以S-1-5- 开头,即“NT 授权”,用于在基于 NT 的操作系统中生成 SID(IE所有现代 Windows 版本)。

此时您可能会认为以 开头的 SIDS-1-5-...显示为NT AUTHORITY\,但事实并非如此 - 许多子分支都有自己的前缀,以人类可读的形式显示,例如:

  • S-1-5-21-domainID-用于自定义 Active Directory 域 ( MYDOMAIN\...)
  • S-1-5-32BUILTIN\BUILTIN\Administrators例如 -544)
  • S-1-5-80-serviceHash是为了NT SERVICE\(service name)

未归入其他名称的知名 SID 有时会显示前缀NT AUTHORITY\,例如:

因此,“NT AUTHORITY”名称是 Windows 中使用的安全子系统极端通用的产物,除了“我们没有想出更具体的组”之外,没有任何有用的含义。

NT SERVICE\S-1-5-80-...是用于“虚拟账户”当指定以哪个账户运行名为 MyService 的服务时,您可以输入“NT SERVICE\MyService”,无需密码,它将在单独的安全上下文中运行,您可以在其他地方为其设置权限。

相关内容