服务帐户

适用范围:Windows Server 2025、Windows Server 2022、Windows Server 2019、Windows Server 2016

服务帐户是显式创建的用户帐户,用于为 Windows Server 操作系统上运行的服务提供安全上下文。 安全上下文决定了服务访问本地和网络资源的能力。 Windows 操作系统依靠服务来运行各种功能。 可通过应用程序、服务管理单元或任务管理器,或者使用 Windows PowerShell 来配置这些服务。

本文包含有关以下类型的服务帐户的信息:

独立托管服务帐户

托管服务帐户旨在隔离关键应用程序中的域帐户,例如 Internet Information Services (IIS)。 无需管理员手动管理服务主体名称 (SPN) 和帐户凭据。

要使用托管服务帐户,安装应用程序或服务的服务器必须运行 Windows Server 2008 R2 或更高版本。 一个托管服务帐户可用于单台计算机上的多个服务。 无法在多台计算机之间共享托管服务帐户,也无法在多个群集节点复制某个服务的服务器群集中使用托管服务帐户。 对于这种情况,必须使用组托管服务帐户。 有关详细信息,请参阅组托管服务帐户概述

除了针对关键服务的独立帐户所提供的高度安全,还有 4 个与托管服务帐户相关联的重要的管理优势:

  • 可创建一类可用于在本地计算机上管理和维护服务的域帐户。

  • 组托管服务帐户的网络密码会自动重置,这一点与域帐户不同,后者需要管理员手动重置密码。

  • 无需完成复杂的 SPN 管理任务即可使用托管服务帐户。

  • 可将托管服务帐户的管理任务委托给非管理员。

注意

托管服务帐户仅适用于本文开头适用范围中列出的 Windows 操作系统。

组托管服务帐户

组托管服务帐户是 Windows Server 2008 R2 中引入的独立托管服务帐户的扩展。 这些帐户是托管域帐户,可提供自动的密码管理和简化的 SPN 管理(包括将管理委派给其他管理员)。

组托管服务帐户和独立托管服务帐户在域中提供同样的功能,但通过多个服务器对功能进行了扩展。 连接到托管在服务器场上的服务(例如网络负载均衡)时,支持相互身份验证的身份验证协议要求服务的所有实例都使用同一主体。 将组托管服务帐户用作服务主体时,Windows Server 操作系统将管理帐户密码,而不是依靠管理员管理密码。

Microsoft 密钥发行服务 (kdssvc.dll) 提供机制来安全获得最新密钥或具有 Active Directory (AD) 帐户的密钥标识符的特定密钥。 此服务是在 Windows Server 2012 中引入的,它不能在早期版本的 Windows Server 操作系统上运行。 Kdssvc.dll 共享一个机密,用于为帐户创建密钥。 这些密钥会定期更改。 对于组托管服务帐户,域控制器 (DC) 会计算 kdssvc.dll 提供的密钥密码,以及组托管服务帐户的其他属性。

委派托管服务帐户

在 Windows Server 2025 中引入名为委托托管服务帐户 (dMSA) 的新帐户类型。 此帐户类型使用户能够从传统服务帐户过渡到具有托管和完全随机密钥的计算机帐户,同时禁用原始服务帐户密码。 针对 dMSA 的身份验证已链接到设备标识,因此只有 AD 中已映射的指定计算机标识才能访问该帐户。 通过使用 dMSA,用户可以防止使用与传统服务帐户相关联的已泄露帐户获取凭据的常见问题。

用户可以选择将 dMSA 创建为独立帐户,或者用它替换现有的标准服务帐户。 如果现有帐户替换为 dMSA,则会阻止使用旧帐户的密码进行身份验证。 相反,请求被重定向到本地安全机构 (LSA),以便使用 dMSA 进行身份验证,dMSA 将可以访问与 AD 中以前的帐户相同的资源。 若要了解更多信息,请参阅委派的托管服务帐户概述

虚拟帐户

Windows Server 2008 R2 和 Windows 7 中引入了虚拟帐户。 它们是托管的本地帐户,通过提供以下好处简化了服务管理:

  • 自动管理虚拟帐户。
  • 虚拟帐户可以在域环境下访问网络。
  • 无需密码管理。 例如,如果在 Windows Server 2008 R2 上安装 SQL Server 期间对服务帐户使用默认值,则会以 NT SERVICE\<SERVICENAME> 格式建立使用实例名称作为服务名称的虚拟帐户。

以虚拟帐户身份运行的服务通过使用计算机帐户的凭据(格式为 <domain_name>\<computer_name>$)访问网络资源。

若要了解如何配置和使用虚拟服务帐户,请参阅托管服务帐户和虚拟帐户概念

注意

虚拟帐户仅适用于本文开头“适用范围”中列出的 Windows 操作系统。

选择服务帐户

服务帐户用于控制服务对本地和网络资源的访问,它们有助于确保该服务可以安全可靠地运行,而不会将敏感信息或资源暴露给未经授权的用户。 若要查看服务帐户类型之间的差异,请参阅我们的比较表:

条件 sMSA gMSA dMSA 虚拟帐户
应用在单个服务器上运行
应用在多个服务器上运行
应用在负载均衡器之后运行
应用在 Windows Server 2008 R2 及更高版本上运行。 No
要求将服务帐户限制为单一服务器 No
支持与设备标识链接的计算机帐户 No
用于高安全性方案(防止凭据捕获) No

选择服务帐户时,请务必考虑以下因素:服务所需的访问级别、服务器上的安全策略以及运行的应用程序或服务的特定需求。

  • sMSA:sMSA 专为在单台计算机上使用而设计,为管理 SPN 和凭据提供了一种安全、简化的方法。 它们可以自动管理密码,是隔离关键应用程序中的域帐户的理想选择。 但是,它们不能跨多个服务器或在服务器群集中使用。

  • gMSA:通过支持多个服务器来扩展 sMSA 的功能,使其适用于服务器场和负载均衡的应用程序。 它们提供自动密码和 SPN 管理,减轻了管理负担。 gMSA 提供单个标识解决方案,允许服务在多个实例之间无缝进行身份验证。

  • dMSA:将身份验证链接到特定计算机标识,防止通过凭据捕获进行未经授权的访问,从而允许从具有完全随机化和管理密钥的传统服务帐户转换。 dMSA 可以取代现有的传统服务帐户,确保只有经过授权的设备才能访问敏感资源。

  • 虚拟帐户:一个托管的本地帐户,提供了一种简化的服务管理方法,无需手动管理密码。 他们可以使用计算机帐户的凭据访问网络资源,使其适用于需要域访问权限的服务。 虚拟帐户是自动管理的,需要最少的配置。

另请参阅

内容类型 参考
产品评估 托管服务帐户新增功能
组托管服务帐户入门
部署 Windows Server 2012:组托管服务帐户 - 技术社区
相关技术 安全主体
Active Directory 域服务中的新增功能