Windows LAPS实务指南 ── 告别全部PC通用的本地管理员密码

· · Windows, 安全, LAPS, 密码管理, Active Directory, Intune, PowerShell, 信息系统

在装机现场,有一种延续已久的「标准偷懒做法」。把通用的本地管理员密码烧录进主镜像,再部署到全部设备 ── 进行维护时只需用这个密码登录即可,作为操作步骤看起来相当合理。然而,这种配置如今已成为攻击者眼中「批量配制万能钥匙」的头号目标,因为一台设备被攻陷,就会直接变成全部设备被攻陷。

本文面向中小企业的信息系统负责人,以及承接PC装机与维护运维的开发者,先梳理通用本地管理员密码为何危险,再基于2026年8月时点的一手资料,讲解作为解决方案的、内置于OS的Windows LAPS(Local Administrator Password Solution)的机制、按环境划分的使用方式、部署步骤,直至运维中的常见陷阱。本文是继BitLocker、WSUS废止、防火墙、证书存储之后,面向信息系统人员的安全系列文章的续篇。

1. 先说结论

  • 全部PC通用的本地管理员密码,是把一台设备的入侵扩散至全部设备的横向移动(lateral movement)温床。密码相同则NTLM哈希也相同,因此只要有一台设备的哈希被窃取,就能通过Pass-the-Hash攻入其余全部设备。1
  • Windows LAPS是一项OS标准功能,它会按设备将本地管理员密码随机化并自动轮换。作为应对Pass-the-Hash与横向移动的对策,Microsoft将其列为首要优势。1
  • 自2023年4月11日更新程序以后的Windows 10/11、以及Windows Server 2019/2022及以后版本均已内置该功能。与旧版LAPS(以MSI方式分发)不同,无需额外安装。旧版LAPS自Windows 11 23H2起已被弃用。1
  • 密码的保存位置只能二选一,为Active Directory或Microsoft Entra ID。仅加入域的设备保存到AD,仅加入Entra的设备保存到Entra ID,混合加入的设备可从中选择其一。未加入任何一方的工作组设备无法使用该功能。1
  • 默认情况下什么都不会发生。BackupDirectory的默认值为「已禁用」,只有在策略(GPO或Intune/CSP)中明确指定保存位置后,功能才会开始运作。2
  • 保存到AD需要完成3项前期准备。分别是架构扩展(Update-LapsADSchema)、赋予计算机自身的写入权限(Set-LapsADComputerSelfPermission),以及设计查看权限(Set-LapsADReadPasswordPermission)。3
  • 查看密码使用Get-LapsADPassword / Get-LapsAADPassword,立即应用策略使用Invoke-LapsPolicyProcessing,在设备端立即轮换密码使用Reset-LapsPassword4
  • 用过的密码会被自动作废。在受管账户完成认证后,默认会在24小时后执行重置并注销(PostAuthenticationActions)。2

2. 为什么全部PC通用的本地管理员密码很危险

首先要准确把握威胁的结构。如果把本地管理员账户(即内置的Administrator账户,或装机时创建的维护专用账户)的密码在全部设备上设为通用,会发生什么?

Windows并不会直接保存本地账户的密码,而是保存由密码计算出的NT哈希。而在NTLM认证中,这个哈希本身就是认证所需的材料。也就是说,只要密码相同,全部设备上的哈希也都相同。攻击者一旦通过恶意软件或定向攻击拿到一台设备的管理员权限,就能从该设备的内存或本地数据库(SAM)中取出哈希。真正的问题从这里才开始 ── 取出的哈希无需还原为明文密码,就能直接用于认证。这就是Pass-the-Hash攻击。在通用密码环境下,从一台设备获得的哈希就成了通往其余全部设备的「万能钥匙」,入侵会一口气横向扩散。关于NTLM认证的机制,以及为何仅凭哈希就能通过认证,我们在《图解NTLM与Kerberos》中做了详细说明。

引入 LAPS 后密码因设备而异获取 PC-01 的哈希攻陷 PC-01其他 PC 无法用该哈希完成认证 -阻断经由本地管理员的横向扩散-通用密码环境Pass-the-HashPass-the-HashPass-the-Hash获取管理员的 NT 哈希攻陷 PC-01-恶意软件・定向攻击-PC-02PC-03…横向扩散至全部设备

应对方向很明确 ── 让每台设备的本地管理员密码各不相同,并且定期更换。这样一来,即使一台设备的哈希泄露,也无法用于其他设备,从而切断「本地管理员账户被反复使用」这条横向扩散路径(需要注意的是,这并不能堵住所有横向扩散路径,例如从被入侵PC上窃取域凭据等其他手段依然存在)。然而,靠人工来做这件事并不现实。为几十台设备逐一生成密码、用台账管理、再定期巡回更新 ── 正是这种高昂的运维成本,才让「通用密码」这种偷懒做法得以存续至今。而把「密码个别化与定期更换的自动化」连同「向目录安全保存」一并交给OS来承担的,正是Windows LAPS。Microsoft自己也把「防范Pass-the-Hash攻击与横向移动(lateral-traversal)攻击」列为Windows LAPS的首要优势。1

另外,关于「日常工作本就不应使用管理员账户」「应限定维护账户的用途」这类特权管理的基本原则,也请参阅《Windows什么时候需要管理员权限》。

3. 什么是Windows LAPS ── 与旧版LAPS的区别

LAPS这个名字有一段历史,在实务中如果不区分「说的是哪个LAPS」,沟通就容易对不上。

旧版LAPS(Legacy Microsoft LAPS)是Microsoft于2016年发布的、需要额外安装的工具。1 其架构是把MSI安装包分发到全部设备并安装组策略扩展(CSE),将密码以明文形式保存到Active Directory的ms-Mcs-AdmPwd属性中,长期以来一直是事实上的标准。

Windows LAPS是作为其后继者、内置于OS的另一套实现。它包含在2023年4月11日更新程序以后的Windows 10、Windows 11 21H2/22H2、Windows Server 2019/2022中,而Windows 11 23H2及以后版本、Windows Server 2025及以后版本则从一开始就已内置。1 也就是说,只要是正常应用更新程序的环境,公司内的PC中应该已经具备Windows LAPS。剩下要做的只是配置策略。

维度 旧版LAPS(Legacy) Windows LAPS
提供形态 以MSI分发并安装到全部设备 OS内置(2023年4月更新以后)。无需额外安装1
密码保存位置 仅Active Directory Active Directory或Microsoft Entra ID1
AD上的加密 不支持(明文+ACL保护) 支持(DFL 2016以上可实现加密保存、历史保存)3
DSRM密码管理 不支持 也可管理域控制器的DSRM账户1
认证后自动重置 通过PostAuthenticationActions实现认证后自动重置+注销等2
PowerShell AdmPwd.PS模块 LAPS模块(Get-LapsADPassword等)4
今后 Windows 11 23H2起弃用。新系统中MSI安装本身会被阻止1 目前的标准

重要的是,Windows LAPS并非旧版LAPS的改良版,而是完全独立的实现,AD的架构属性也与旧版LAPS不同(msLAPS-*)。4 为了帮助从旧版LAPS迁移,系统还提供了让Windows LAPS解释旧版LAPS的GPO设置并据此运作的「仿真模式(emulation mode)」,但这种模式限制较多(见第6章),在新部署中没有理由特意选用它。

4. 密码保存在哪里 ── 按环境划分的判断表

Windows LAPS会把生成的密码「备份」到目录中。保存位置由设备的加入状态决定,无法同时保存到AD和Entra ID两处1

环境 保存位置 策略分发方式 密码查看方式 判断建议
仅加入AD域 Active Directory(计算机对象的msLAPS-*属性) 组策略(LAPS.admx) Get-LapsADPassword、「Active Directory用户和计算机」的属性页面3 以本地部署为主的中小企业的首选。需要事先完成架构扩展与权限设置
仅加入Entra(+Intune) Microsoft Entra ID 通过Intune以LAPS CSP分发 Entra管理中心/Intune管理中心、Get-LapsAADPassword(Microsoft Graph)5 已迁移到云端管理的场景选这个。需要先在租户侧启用该功能
混合加入 从AD或Entra ID中二选一1 GPO或Intune 依所选保存位置对应上述两者之一 由帮助台平时主要在哪一侧工作来决定
工作组(未加入) 没有保存位置,无法使用1 只能替代为按设备设置独立密码+台账的人工运维。设备数量增多时应考虑迁移到Entra加入/域加入

保存到AD时,密码会写入计算机对象的属性中(明文时为msLAPS-Password,启用加密时为msLAPS-EncryptedPassword,过期时间为msLAPS-PasswordExpirationTime)。6 其中含有密码的属性(msLAPS-Password及加密相关的msLAPS-Encrypted*)被标记为机密属性(confidential),普通的读取权限无法查看。而过期时间属性msLAPS-PasswordExpirationTime没有机密标记(SearchFlags为0),属于默认读取权限即可查看的元数据。6 要使用加密保存与密码历史功能,需要域功能级别(DFL)在2016以上。3 需要注意的是,加密设置(ADPasswordEncryptionEnabled)的默认值为「已启用」。2 DFL低于2016的域无法使用加密,因此不能指望系统会自动切换为明文,而应当在策略中明确禁用加密,将配置固定为明文+ACL保护的保存方式。3

保存到Entra ID时,标准架构是先在租户侧启用「本地管理员密码管理」,再通过Intune经LAPS CSP分发策略。在许可证方面,Windows LAPS功能本身是免费的,保存到AD没有额外许可要求,保存到Entra ID也只需Microsoft Entra ID Free及以上版本即可使用。1

工作组设备之所以没有替代方案,是因为作为保存位置的目录本身就不存在,这一点无法绕开。现实中的做法是,在装机时为每台设备设置不同的密码,再用密码管理器等工具进行台账管理的人工运维。如果装机流程已经脚本化,最稳妥的做法就是把「按设备生成密码」内置到脚本中(参见《用winget + PowerShell自动化PC装机》)。

5. 部署实务 ── 以AD+GPO架构为主线

本章以案例最多的AD域+GPO架构为主线,梳理实际操作步骤。与Entra+Intune架构的差异汇总在末尾。

5.1. 前期准备(仅需一次的工作)

保存到AD时,需要在分发策略之前先完成林(forest)侧的准备工作。3

# 1. 架构扩展(整个林仅需一次,需要 Schema Admins 权限执行)
Update-LapsADSchema

# 2. 为目标 OU 下的计算机授予更新自身密码属性的权限
Set-LapsADComputerSelfPermission -Identity "OU=社内PC,DC=example,DC=co,DC=jp"

# 3. 授予可以查看密码的组(Domain Admins 默认即可查看)
Set-LapsADReadPasswordPermission -Identity "OU=社内PC,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 4. 授予可以操作密码过期时间(即立即失效=下达重置指令)的组
#    (5.4 节的 Set-LapsADPasswordExpirationTime 需要此权限。Domain Admins 默认即可操作)
Set-LapsADResetPasswordPermission -Identity "OU=社内PC,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 5. 确认是否存在意料之外的查看权限持有者(详见第 6 章)
Find-LapsADExtendedRights -Identity "OU=社内PC,DC=example,DC=co,DC=jp"

如果要使用加密保存(需要DFL 2016以上,默认已启用),还需要再做一项设置。查看权限与解密权限是两回事,默认只有Domain Admins才能解密。3 如果希望帮助台组真正能取得密码,还需要在策略侧的ADPasswordEncryptionPrincipal中同样指定该组(EXAMPLE\HelpdeskAdmins)。2 如果忘记这一步,即使按上述步骤授予了查看权限,也会陷入「属性可读却无法解密」的状态。

Update-LapsADSchema与旧版LAPS的Update-AdmPwdADSchema是两回事,它添加的是msLAPS-*属性。即使环境中已经部署了旧版LAPS,仍需要重新为Windows LAPS执行架构扩展。4 另外,如果使用了GPO的中央存储(Central Store),Windows LAPS的模板不会通过Windows Update自动复制到中央存储中,需要手动复制。2 此时不仅要复制%windir%\PolicyDefinitions\LAPS.admx,还要把语言资源文件LAPS.adml(中文界面对应的是zh-CN子文件夹)一并复制到对应的语言文件夹中。如果缺少ADML文件,GPMC中显示LAPS策略时会出现资源错误。

5.2. 策略配置

GPO的设置位置是「计算机配置 > 策略 > 管理模板 > 系统 > LAPS」。2 最低限度必须完成的设置是指定保存位置 ── 只要不把BackupDirectory设为「Active Directory」(值2),Windows LAPS就什么都不会做(默认值为「已禁用」)。2 主要设置项及其默认值如下。

设置项 默认值 实务中的考量
BackupDirectory 已禁用(0) 必须设置。AD=2、Entra ID=12
AdministratorAccountName 未指定(管理内置Administrator) 未指定时会通过RID自动定位内置账户。仅在需要管理自定义维护账户时才指定名称。该账户本身不会被自动创建,需另行创建2
PasswordAgeDays 30天 轮换周期。可设为1~365天(保存到Entra时最短为7天)2
PasswordLength / PasswordComplexity 14位 / 大小写字母+数字+符号(4) 保持默认即可满足实用需求。复杂度1~3仅用于兼容旧版LAPS,不推荐使用2
PasswordExpirationProtectionEnabled 已启用 防止过期时间被延长至超过策略上限2
ADPasswordEncryptionEnabled 已启用(需要DFL 2016以上) 加密保存。默认只有Domain Admins能够解密(详见第6章)2
PostAuthenticationResetDelay / PostAuthenticationActions 24小时 / 重置+注销(3) 认证后的自动作废机制(详见第6章)2

这里容易被忽略的一点是受管账户本身是启用还是禁用。内置Administrator账户在Windows安装时就已经被禁用。7 Windows LAPS即使面对处于禁用状态的账户也会管理其密码,但并不会顺带把账户启用2 也就是说,在默认配置下可能出现「密码明明已保存到目录中,但该账户却没有任何人能够登录」的状态。若要把它用作恢复手段,需要明确选择以下方案之一:启用内置Administrator账户并投入使用;把已启用的自定义维护账户设为受管对象;或者在Windows 11 24H2 / Server 2025及以后版本中,通过自动账户管理(AutomaticAccountManagement相关设置)把启用状态也一并纳入管理。2

5.3. 验证运行与获取密码

Windows LAPS每隔1小时处理一次生效的策略。如果不想等待自动应用而想立即验证,可以在目标设备上执行立即处理。3

# 设备端:立即处理策略(验证时的常用做法)
Invoke-LapsPolicyProcessing

# 设备端:通过事件日志确认结果
# 10003=开始处理 / 10004=成功 / 10005=失败 / 10018=保存到 AD 成功
Get-WinEvent -LogName "Microsoft-Windows-LAPS/Operational" -MaxEvents 20

已保存的密码可以从拥有相应权限的管理设备上获取。3

# 从 AD 获取密码(不加 -AsPlainText 则可以在不显示明文的情况下处理该字符串)
Get-LapsADPassword -Identity PC-0123 -AsPlainText

# 输出示例:会返回 Account、Password、PasswordUpdateTime、ExpirationTimestamp、
#         Source(为 EncryptedPassword 时表示加密保存)、AuthorizedDecryptor 等字段

偏好使用GUI的用户,也可以通过「Active Directory用户和计算机」中计算机属性新增的LAPS选项卡来查看。1

5.4. 立即轮换

在维护作业用完密码之后,或怀疑设备已被入侵时,无需等待下一次定期轮换,可以立即执行轮换。3

# 从管理设备执行:把过期时间设为「现在」,让下一次处理触发轮换
Set-LapsADPasswordExpirationTime -Identity PC-0123
# 在目标设备上触发立即处理,即可当场变为新密码
Invoke-LapsPolicyProcessing

# 若要直接在目标设备上立即轮换
Reset-LapsPassword

5.5. Entra+Intune架构下的差异

保存到Entra ID时,不需要像AD那样进行架构扩展或ACL设置。3 取而代之的是,必须在Microsoft Entra租户的[设备设置]中启用本地管理员密码管理,忘记这一步的话设备将无法保存密码。5 策略通过Intune以LAPS CSP的方式分发,密码则可以在Entra管理中心/Intune管理中心的界面中查看,或通过Microsoft Graph调用Get-LapsAADPassword获取。5

# 通过 Graph 获取保存在 Entra ID 中的密码(委托访问示例)
# 连接时明确请求所需的权限范围
Connect-MgGraph -Scopes "Device.Read.All","DeviceLocalCredential.Read.All"
Get-LapsAADPassword -DeviceIds PC-0123 -IncludePasswords -AsPlainText

保存成功的事件ID,AD侧为10018,而Entra ID侧为10029。8

6. 运维中的常见陷阱

部署完成并不意味着结束。下面按顺序列出现场中实际容易踩到的坑。

6.1. 查看权限比想象中更广

密码属性是机密属性(confidential),普通读取权限看不到,但对目标OU拥有扩展权利(All Extended Rights)的主体是可以读取的。在以往运维中曾对OU委派过较宽泛权限的环境里,很容易出现意料之外的组能够读取密码的情况。部署时应使用Find-LapsADExtendedRights排查扩展权利的持有者,如果发现SYSTEM和Domain Admins以外的对象,请重新审视委派内容。3

此外,启用加密保存(ADPasswordEncryptionEnabled)后,可以把查看权限与解密权限分离开来。仅授予查看权限并不能解密加密后的密码,默认只有Domain Admins能够解密,若要更改,需要通过ADPasswordEncryptionPrincipal指定可解密的组。3 诸如「帮助台只能解密自己所负责OU的密码」这类精细化控制,就需要按这两层结构来设计。

6.2. 「用完即弃」机制及其局限 ── PostAuthenticationActions

如果帮助台取得的密码就那样一直留在备忘纸条或聊天记录里,那就失去了意义。Windows LAPS会在检测到受管账户完成认证之后,等待宽限时间(PostAuthenticationResetDelay,默认24小时)过去,自动执行善后处理。默认动作是「重置密码并注销」。2

PostAuthenticationActions 行为
1 重置密码
3(默认) 重置+注销交互式会话(同时断开SMB会话)2
5 重置+重启设备2
11 重置+注销+终止残留进程(Windows 11 24H2 / Server 2025及以后版本)2

有两点需要注意。第一,如果把宽限时间设为0,这项功能本身就会被禁用。2 第二,触发条件是「认证」而非「查看密码」。如果只是从目录中取出了密码但并未使用,这个自动重置不会被触发。稳妥的做法是,把「无论是否使用过,只要查看过密码,就在作业完成时用Set-LapsADPasswordExpirationTime使其失效」固定为标准运维流程。

6.3. 与旧版LAPS的并存与迁移

迁移期间最危险的情形是同一个账户同时被旧版LAPS和Windows LAPS双方管理。两套机制争夺同一账户密码控制权的配置属于安全风险,且不受官方支持。9 规则梳理如下。

  • 只要设备上应用了哪怕一条Windows LAPS策略,Windows LAPS自身就会始终忽略旧版LAPS的策略(Windows LAPS优先)。9 但这仅仅是Windows LAPS一侧的解释行为。如果旧版LAPS的CSE(组策略扩展)仍然安装在设备上,旧版CSE会独立地继续处理旧版GPO。如果设备仍留在旧版GPO的应用范围内,同时又启用了Windows LAPS策略,就会形成两者同时轮换同一账户的双重管理状态。
  • 让Windows LAPS处理旧版LAPS的GPO设置的「仿真模式」,只在未安装旧版LAPS CSE的设备上才能运作。它沿用旧版LAPS环境的前提条件(旧架构、旧ACL),但无法使用加密或保存到Entra等新功能。9
  • 仅仅是更新了OS,就可能导致仍残留旧版LAPS GPO的设备意外地以仿真模式启动运作。如果想避免装机刚完成时发生意料之外的密码变更,可以通过本地配置注册表项设置BackupDirectory=0来停止仿真模式。9

迁移应按照「把目标OU从旧版LAPS的GPO应用范围中移除(或卸载旧版CSE)→ 应用Windows LAPS策略 → 清除残留的旧版GPO・旧版CSE」的顺序进行,即先解除旧管理,再启用新管理,确保按设备划分时归属哪一方管理始终唯一。如果顺序颠倒(先应用Windows LAPS策略),在仍残留旧版CSE的设备上就会发生上述双重管理问题。

6.4. 审计 ── 留存「谁在何时查看过」的记录

既然要集中保存本地管理员密码,其查看历史自然是审计对象。设备侧的动作会全部记录在事件日志的专用通道中(事件查看器的「应用程序和服务日志 > Microsoft > Windows > LAPS > Operational」),可以确认处理开始10003、成功10004、失败10005、保存成功10018(AD)/10029(Entra)、当前应用策略内容10021~10023等信息。8 在AD侧,可以通过Set-LapsADAuditing为目标OU配置审计设置,将对密码属性的访问记录到域控制器的安全日志中。4 保存到Entra ID的情形,则通过Entra一侧的审计日志与报表功能进行追踪。1

7. 总结

  • 全部PC通用的本地管理员密码,会形成「一台被攻陷即可通过Pass-the-Hash波及全部设备」的结构。应对之道是按设备实现个别化与自动轮换,而承担这项工作的正是Windows LAPS。
  • Windows LAPS已内置于2023年4月更新以后的Windows 10/11、以及Windows Server 2019/2022及以后版本,无需额外安装。旧版LAPS(以MSI分发)已被弃用,新部署只能选择Windows LAPS。
  • 保存位置只能在AD或Entra ID中二选一,由设备的加入状态决定。工作组设备无法使用该功能,需要人工个别管理,或重新审视设备的加入形态。
  • 默认处于禁用状态。若采用AD架构,需要准备架构扩展、自我更新权限、查看权限这3项前提,再通过GPO设置BackupDirectory才能开始运作。
  • 日常运维以PowerShell为核心。获取密码用Get-LapsADPassword / Get-LapsAADPassword,立即应用策略用Invoke-LapsPolicyProcessing,立即轮换用Reset-LapsPassword。
  • 常见陷阱包括:因扩展权利而导致的意外查看、仅查看密码并不会触发PostAuthenticationActions、与旧版LAPS的双重管理,以及审计机制未完善。请在部署时用Find-LapsADExtendedRights确认权限,并把「查看后使其失效」的步骤固定为标准流程。

相关文章

相关咨询领域

合同会社小村软件承接PC装机自动化脚本编写、包括Windows LAPS部署在内的终端安全设置整备,以及从现有通用密码运维方式迁移出来的计划制定。即便还处于「虽然有装机操作手册,但严重依赖个人经验」「想引入LAPS,但对AD的权限设置没有把握」这样的阶段,也欢迎咨询。

参考链接

  1. Microsoft Learn, What is Windows LAPS?。关于Windows LAPS是自动管理并备份加入Entra或AD的设备本地管理员账户密码的Windows功能、其支持的操作系统(2023年4月11日更新以后的Windows 10、Windows 11 21H2/22H2、Windows Server 2019/2022,以及Windows 11 23H2及以后版本、Windows Server 2025及以后版本标准内置)、其首要优势是防范Pass-the-Hash攻击与横向移动攻击、按加入状态划分的保存位置限制(仅加入Entra→Entra ID,仅加入AD→AD,混合加入→二选一,无法同时保存到两处)、旧版LAPS在Windows 11 23H2及以后版本被弃用且新系统中会阻止MSI安装、旧版LAPS是2016年发布的另一款产品而Windows LAPS是完全独立的实现、可通过「Active Directory用户和计算机」的属性页面・专用事件日志通道・PowerShell模块进行管理、功能本身免费且保存到AD无需额外许可证、保存到Entra ID时Entra ID Free及以上版本即可使用等内容。  2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

  2. Microsoft Learn, Configure policy settings for Windows LAPS。关于通过GPO(计算机配置>策略>管理模板>系统>LAPS,模板位于%windir%\PolicyDefinitions\LAPS.admx)与LAPS CSP进行策略配置、需要手动把LAPS.admx复制到GPO中央存储、各设置项的默认值(BackupDirectory=已禁用,PasswordAgeDays=30天・最短1天・保存到Entra时最短7天,PasswordLength=14,PasswordComplexity=4且1~3仅用于兼容旧版LAPS,PasswordExpirationProtectionEnabled=已启用,ADPasswordEncryptionEnabled=已启用且需要DFL 2016以上,PostAuthenticationResetDelay=24小时且设为0即禁用该功能,PostAuthenticationActions=3)、AdministratorAccountName未指定时会通过RID自动定位内置账户且自定义账户不会由LAPS创建、PostAuthenticationActions各取值(1=重置,3=重置+注销+断开SMB会话,5=重置+重启,11=重置+注销+终止进程,仅限Windows 11 24H2/Server 2025及以后版本)等内容。  2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

  3. Microsoft Learn, Get started with Windows LAPS and Windows Server Active Directory。关于通过Update-LapsADSchema为整个林执行一次架构扩展、通过Set-LapsADComputerSelfPermission授予计算机自身的更新权限、通过Set-LapsADReadPasswordPermission授予查看权限(Domain Admins默认可查看)、通过Set-LapsADResetPasswordPermission授予设置过期时间(立即失效)的权限(Domain Admins默认拥有该权限)、查看权限与解密权限是两回事且ADPasswordEncryptionPrincipal(默认为Domain Admins)决定谁可以解密、通过Find-LapsADExtendedRights确认扩展权利持有者(LAPS密码属性均为机密属性,拥有扩展权利者可以读取)、BackupDirectory=2为必须设置项、策略每1小时处理一次且可通过事件10018确认保存到AD成功、通过Invoke-LapsPolicyProcessing立即处理、通过Get-LapsADPassword获取密码、通过Set-LapsADPasswordExpirationTime设置过期(使密码失效)以及通过Reset-LapsPassword在设备上立即轮换、加密需要DFL 2016以上且低于该级别时只能以明文(ACL保护)保存等内容。  2 3 4 5 6 7 8 9 10 11 12 13

  4. Microsoft Learn, Overview of Windows LAPS PowerShell cmdlets。关于LAPS PowerShell模块中各个cmdlet(Get-LapsAADPassword、Get-LapsADPassword、Invoke-LapsPolicyProcessing、Reset-LapsPassword、Set-LapsADAuditing、Set-LapsADComputerSelfPermission、Set-LapsADPasswordExpirationTime、Set-LapsADReadPasswordPermission、Set-LapsADResetPasswordPermission、Update-LapsADSchema、Find-LapsADExtendedRights、Get-LapsDiagnostics)的作用、与旧版LAPS的AdmPwd.PS模块的对应关系、Windows LAPS的cmdlet面向的是与旧版LAPS完全不同的架构扩展等内容。  2 3 4 5

  5. Microsoft Learn, Get started with Windows LAPS and Microsoft Entra ID。关于保存到Entra ID需要在租户的设备设置中启用该功能、向加入Entra的设备分发策略推荐使用Intune+LAPS CSP、保存到Entra时适用的设置子集、通过Microsoft Graph(Get-LapsAADPassword是Graph PowerShell的封装)或Entra/Intune管理中心界面获取密码、所需的Graph权限(Device.Read.All与DeviceLocalCredential.Read.All或DeviceLocalCredential.ReadBasic.All)、可通过事件10029确认保存成功等内容。  2 3

  6. Microsoft Learn, Windows LAPS schema extensions reference。关于Update-LapsADSchema为计算机对象添加的msLAPS-*属性(msLAPS-Password=明文密码及附带信息,msLAPS-PasswordExpirationTime=过期时间,msLAPS-EncryptedPassword=加密密码等)的规格,以及密码相关属性的SearchFlags为904(含fCONFIDENTIAL机密属性标记),而msLAPS-PasswordExpirationTime的SearchFlags为0、未被标记为机密等内容。  2

  7. Microsoft Learn, Local accounts。关于内置Administrator账户在Windows安装时会被禁用、取而代之创建另一个属于Administrators组的本地账户、被禁用的Administrator账户除安全模式下的特例外无法使用、本地管理员账户密码复用会带来Pass-the-Hash攻击导致横向移动的风险且LAPS被列为随机化的首选手段等内容。 

  8. Microsoft Learn, Use Windows LAPS event logs。关于专用事件日志通道(事件查看器的应用程序和服务日志>Microsoft>Windows>LAPS>Operational)会记录全部操作、策略处理的开始10003・成功10004・失败10005、当前应用策略内容的记录(保存到AD为10021・保存到Entra为10022・旧版LAPS仿真为10023)、密码保存成功的事件(AD=10018,Entra ID=10029)等内容。  2

  9. Microsoft Learn, Get started with Windows LAPS in legacy Microsoft LAPS emulation mode。关于让Windows LAPS解释旧版LAPS的GPO设置并据此运作的仿真模式的限制(仅支持明文保存,旧架构扩展・旧GPO定义・旧ACL管理均需要安装旧版LAPS,只要存在Windows LAPS策略就始终优先于旧版策略而旧策略会被忽略,在已安装旧版LAPS CSE的设备上不生效)、用两套机制管理同一账户属于安全风险且不受支持、可通过在本地配置注册表项中设置BackupDirectory=0来抑制仿真模式等内容。  2 3 4

共享相同标签的最新文章。可以围绕相近的主题进一步加深理解。

与本文相近的主题页面。以本文为起点,可以进一步了解相关服务和其他文章。

本文与以下服务页面相关联,欢迎从最接近的入口查看。

常见问题

汇总了咨询这一主题时常见的问题。

我们已经在运行旧版LAPS(以MSI分发的Microsoft LAPS)。需要做些什么吗?
请开始制定迁移计划。旧版LAPS自Windows 11 23H2起已被弃用,在新系统中MSI安装本身会被阻止。当前的OS(已应用2023年4月更新的Windows 10/11,以及Windows Server 2019/2022及以后版本)已内置Windows LAPS,因此可以无需额外安装就完成迁移。迁移期间也可以让Windows LAPS的「旧版LAPS仿真模式」继续处理旧策略,但存在诸多限制,例如在已安装旧版LAPS CSE的设备上不生效、无法使用加密或保存到Entra ID等新功能。由于不支持同一账户同时由新旧两套机制管理的配置,请按设备明确划分归属哪一方管理,再进行切换。
取得密码并使用之后,就那样放着不管可以吗?
如果是默认配置,会自动完成善后处理,但并非立即执行。Windows LAPS具备PostAuthenticationActions机制,会在检测到受管账户完成认证(登录)后,等待宽限时间过去再进行处理,默认会在认证后24小时执行密码重置与注销。反过来说,在这段宽限时间过去之前,同一个密码仍然有效可用,并不是「用完的瞬间就失效」。而且这套机制只在「用密码完成认证」时才会启动,仅仅「从目录中查看」并不会触发它。确切可靠的做法,是在作业完成时明确地将其失效。如果保存到AD,可以用Set-LapsADPasswordExpirationTime使其过期(该cmdlet仅适用于保存到AD的情形)。如果保存到Entra ID,则可以在目标设备上执行Reset-LapsPassword,或使用Intune的本地管理员密码轮换操作。
既未加入域、也未加入Entra ID、以工作组方式运行的PC能使用吗?
无法使用。因为Windows LAPS需要以Active Directory或Microsoft Entra ID作为密码保存位置,而两者都未加入的设备根本没有可供备份的目的地。如果要继续维持工作组运维,现实的替代方案是为每台设备设置不同的本地管理员密码,再用安全的场所(如密码管理器)进行台账管理的人工运维。当设备数量增多时,为了享受包括LAPS在内的集中管理带来的好处,就该考虑迁移到加入Entra ID(+Intune)或加入域了。
已保存的密码可以被谁查看?
保存到Active Directory时,默认可以查看的是Domain Admins组的成员,若要让其他用户或组也能查看,需要通过Set-LapsADReadPasswordPermission明确授予权限。不过,虽然密码属性属于机密属性(confidential),但对OU拥有扩展权利(All Extended Rights)的主体依然可以读取,因此部署时务必用Find-LapsADExtendedRights确认是否存在意料之外的持有者。此外,如果通过ADPasswordEncryptionEnabled启用加密(需要域功能级别2016以上),还可以把能够解密的对象限定为通过ADPasswordEncryptionPrincipal指定的组。保存到Entra ID时,默认可以查看的是全局管理员等特权角色,通过Microsoft Graph获取则需要DeviceLocalCredential.Read.All权限。
使用Windows LAPS需要额外的许可证吗?
功能本身是免费的。Windows LAPS是受支持的Windows版本中内置的标准功能,向Active Directory保存密码没有额外的许可证要求。保存到Microsoft Entra ID时,Microsoft Entra ID Free及以上版本的许可证即可使用。不过,像使用Intune分发策略所需的Intune许可证这类周边的Entra/Intune相关功能,可能存在各自独立的许可证要求,请单独确认这一点即可。

作者简介

本文作者的个人简介页面。

Go Komura

小村软件有限公司 代表

以 Windows 软件开发、技术咨询与故障排查为中心,擅长难以复现的故障调查,以及既有资产仍在运行的项目。

返回博客列表