在 AD 中配置 Windows LAPS(本地管理员密码解决方案)
Windows LAPS(本地A管理员P密码解决方案)允许您集中管理 AD 域中计算机上本地管理员的密码。当前的本地管理员密码存储在 Active Directory 中计算机对象的受保护属性中,定期自动更改,并且可由授权用户查看。
在本指南中,我们将向您展示如何配置和使用 Windows LAPS 来管理加入 AD 域的计算机上的本地管理员密码。
在 2023 年 4 月之前,您应该手动下载 LAPS MSI 安装文件,将管理员或客户端组件部署到计算机,安装 LAPS 的 ADMX GPO 模板,并扩展 AD 架构
2023 年 4 月发布了在 Windows 中添加对新版本 LAPS 的本机支持的更新。您不再需要手动下载并安装 MSI 包即可使用 LAPS。
新的内置 Windows LAPS 概述
2023 年 4 月的以下累积更新添加了对 Windows LAPS 的本机支持:
-
Windows 11 22H2 - KB5025239
Windows 11 21H2 - KB5025224
Windows 10 22H2 — KB5025221
Windows Server 2022 - KB5025230
Windows Server 2019 - KB5025229
Windows LAPS 有什么新功能?
新 LAPS 的所有组件都是 Windows 的一部分;
允许将管理员密码存储在本地 Active Directory 或 Azure AD 中;
AD域控制器上的DSRM(目录服务恢复模式)密码管理;
支持密码加密;
-
密码历史记录;
允许本地管理员密码在本地登录计算机后自动更改。
新版本的 Windows LAPS 至少需要 Windows Server 2016 域功能级别。
正如我们上面提到的,您不再需要手动下载并安装 LAPS 客户端或组策略客户端扩展 (CSE)。安装 4 月更新后,所有必要的 LAPS 组件都可以在 Windows 中使用。
可以使用以下 Windows LAPS 管理工具:
新的ADMX组策略文件;
Active Directory 用户和计算机 (ADUC) 控制台中计算机属性中的单独 LAPS 选项卡;
Windows LAPS PowerShell 模块;
事件查看器中的单独日志:应用程序和服务日志 -> Microsoft -> Windows -> LAPS -> 操作。
Microsoft 指出,在部署新的 LAPS GPO 之前,您必须禁用组策略并删除先前版本的 LAPS(旧版 MSI)中的设置。为此,请停止旧版 LAPS 的新安装,并删除以下注册表项 HKLM\Software\Microsoft\Windows\CurrentVersion\LAPS\State 中的所有设置。
如果未删除旧版 LAPS,则具有以下事件 ID 的事件将显示在事件查看器中:
事件 ID 10033,LAPS — 计算机配置了旧版 LAPS 策略设置,但似乎安装了旧版 LAPS 产品。在卸载旧产品之前,Windows 不会管理配置的帐户密码。或者,您可以考虑配置较新的 LAPS 策略设置。
事件 10031,LAPS - LAPS 阻止了试图修改当前经理帐户密码的外部请求。
在 Active Directory 域中部署本地管理员密码解决方案
在所有域控制器上安装新更新后,您可以开始部署新版本的 LAPS。
要管理本地管理员密码解决方案,请使用 LAPS 模块中的 PowerShell cmdlet。您可以使用以下命令:
Get-Command -Module LAPS- Get-LapsAADPassword
- Get-LapsDiagnostics
- Find-LapsADExtendedRights
- Get-LapsADPassword
- Invoke-LapsPolicyProcessing
- Reset-LapsPassword
- Set-LapsADAuditing
- Set-LapsADComputerSelfPermission
- Set-LapsADPasswordExpirationTime
- Set-LapsADReadPasswordPermission
- Set-LapsADResetPasswordPermission
- Update-LapsADSchema
在 DC 和客户端上安装更新后,必须执行 AD 架构更新。这将添加新属性。运行命令:
Update-LapsADSchema如果尚未更新所有 DC,该命令将返回错误:
Update-LapsADSchema : A local error occurred.以下属性将添加到 AD 架构中:
- msLAPS-PasswordExpirationTime
- msLAPS-Password
- msLAPS-EncryptedPassword
- msLAPS-EncryptedPasswordHistory
- msLAPS-EncryptedDSRMPassword
- msLAPS-EncryptedDSRMPasswordHistory
Windows LAPS 中未使用以前版本中用于存储密码的属性(ms-Mcs-AdmPwd 和 ms-Mcs-AdmPwdExpirationTime)。
打开 ADUC 控制台(
dsa.msc),选择 AD 中的任意计算机,然后转到 AD 对象属性编辑器选项卡。检查该对象现在是否具有可用的新属性。
这
msLAPS*属性尚未填充。
现在,您必须允许指定组织单位 (OU) 中的计算机更新其 AD 帐户属性中的 msLAPS* 属性。
例如,我想允许 MUN 容器中的计算机更新 AD 属性中存储的密码。
Set-LapsADComputerSelfPermission -Identity "OU=Computers,OU=MUN,OU=DE,DC=a-d,DC=com"让我们使用 PowerShell 创建一个可以查看此 OU 中计算机上的本地管理员密码的组:
New-ADGroup MUN-LAPS-Admins -path 'OU=Groups,OU=MUN,OU=DE,DC=a-d,DC=com' -GroupScope local -PassThru -Verbose
Add-AdGroupMember -Identity MUN-LAPS-Admins -Members a.morgan,b.krauz我们将允许该组查看并重置本地管理员密码:
$ComputerOU = "OU=Computers,OU=MUN,OU=DE,DC=a-d,DC=com"
Set-LapsADReadPasswordPermission -Identity $ComputerOU -AllowedPrincipals MUN-LAPS-Admins
Set-LapsADResetPasswordPermission -Identity $ComputerOU -AllowedPrincipals MUN-LAPS-Admins默认情况下,Domain Admins 组的成员可以查看所有 AD 计算机上的本地管理员密码。
使用 Find-LapsADExetishedRights 命令检查 OU 中 LAPS 属性的当前权限。
配置 GPO 以更改本地管理员密码
当您在 Windows 上安装最新更新时,将出现一组新的管理模板,用于通过 GPO 管理 LAPS 配置 (%systemroot%\PolicyDefinitions\laps.admx)。
如果您使用 ADMX 模板的中央 GPO 存储,请将 LAPS.admx 复制到以下位置:
\\a-d.site\SysVol\a-d.site\Policies\PolicyDefinitions。
下一个 GPO 部分包含 LAPS 选项:计算机配置 -> 策略 -> 管理模板 -> 系统 -> LAPS。此处提供以下 LAPS 组策略选项:
为 DSRM 帐户启用密码备份
配置加密密码历史记录的大小
启用密码加密
配置授权密码描述符
要管理的管理员帐户名称
配置密码备份目录
不允许密码过期时间长于策略要求的时间
密码设置
身份验证后操作
让我们尝试为 Active Directory 域启用最小组策略 LAPS 设置
打开组策略管理控制台(
gpmc.msc),创建一个新的 GPO 并将其链接到包含计算机的 OU;
打开一个新的 GPO 并导航到包含 LAPS 选项的部分;
启用配置密码备份目录策略并在此处设置Active Directory。 此策略允许将管理员密码存储在本地 Active Directory 中的计算机帐户属性中;
Windows LAPS 还允许您将密码存储在 Azure Active Directory (AAD) 中,而不是本地 ADDS 中。
然后启用密码设置选项。这里必须指定密码复杂度、长度和更改频率参数;
默认情况下启用以下 LAPS 密码设置:密码复杂性、14 个字符的密码长度以及每 30 天更改一次密码。
在要管理的管理员帐户名称中指定要更改其密码的本地管理员帐户的名称。如果您使用内置的 Windows 管理员,请在此处输入管理员。
LAPS GPO 不创建任何本地管理员帐户。如果您想使用其他管理员帐户,请使用 GPO 或 PowerShell 在计算机上创建该帐户。
重新启动计算机以应用新的 GPO 设置。
LAPS:在 Windows 上获取本地管理员密码
实施 LAPS 组策略后,Windows 在启动时更改本地管理员密码,然后将其写入 AD 中计算机对象的 msLAPS-Password protected 属性中。您可以在 ADUC 控制台中或使用 PowerShell 获取计算机的当前密码。
打开 ADUC 控制台并搜索要查找本地管理员当前密码的计算机。计算机对象属性中出现了一个新的LAPS选项卡。
此选项卡上显示以下信息:
当前 LAPS 密码到期
LAPS 本地管理员帐户名
LAPS本地管理员帐户密码
您还可以使用 PowerShell 获取计算机当前的管理员密码:
Get-LapsADPassword mun-pc221 -AsPlainTextComputerName : mun-pc221
DistinguishedName : CN=mun-pc221,OU=…
Account : administrator
Password : 3f!lD1.23!l32
PasswordUpdateTime : 4/24/2023 11:14:26 AM
ExpirationTimestamp : 5/24/2023 11:14:26 AM
Source : EncryptedPassword
DecryptionStatus : Success
AuthorizedDecryptor : WOSHUB\Domain Admins使用此密码以管理员身份本地登录到此计算机。
要立即轮换本地管理员帐户的 LAPS 密码,请运行以下命令:
Reset-LapsPassword这将强制立即更改当前登录的本地管理员帐户的密码并将新密码写入 AD。
Windows 本地管理员密码解决方案是一项简单的内置功能,可让您提高在域计算机上使用本地管理员帐户的安全性。 LAPS 将当前管理员密码存储在安全的 AD 属性中,并定期在所有计算机上更改它。







