開始使用 Windows LAPS 和 Windows Server Active Directory
了解如何開始使用 Windows 區域系統管理員密碼解決方案 (Windows LAPS) 和 Azure Active Directory。 本文描述使用 Windows LAPS 將密碼備份至 Windows Server Active Directory 的基本程序,以及密碼的擷取方式。
網域功能等級和網域控制站 OS 版本需求
如果您設定的網域低於 2016 網域功能等級 (DFL),則您無法啟用 Windows LAPS 密碼加密期間。 若沒有密碼加密,用戶端只能設定為以純文字方式儲存密碼 (由 Active Directory ACL 保護),而 DC 無法設定為管理其本機 DSRM 帳戶。
一旦您的網域達到 2016 DFL,您就可以啟用 Windows LAPS 密碼加密。 不過,如果您仍在執行任何 WS2016 DC,這些 WS2016 DC 不支援 Windows LAPS,因此無法使用 DSRM 帳戶管理功能。
只要您了解這些限制,就可以在網域控制站上使用早於 WS2016 的支援作業系統。
下表摘要說明各種支援或不支援的案例:
網域詳細資料 | 支援儲存純文字密碼 | 支援儲存加密的密碼 (適用於已加入網域的用戶端) | 支援 DSRM 帳戶管理 (適用於 DC) |
---|---|---|---|
低於 2016 DFL | 是 | 無 | No |
具有一或多個 WS2016 DC 的 2016 DFL | Yes | Yes | 是,但僅適用於 WS2019 和更新版本的 DC |
只有 WS2019 和更新版本 DC 的 2016 DFL | Yes | .是 | Yes |
Microsoft 強烈建議客戶在用戶端、伺服器和網域控制站上升級至最新的可用作業系統,以利用最新的功能和安全性改善。
更新 Windows Server Active Directory 結構描述
使用 Windows LAPS 之前,必須先更新 Windows Server Active Directory 結構描述。 此動作是使用 Update-LapsADSchema
Cmdlet 來執行。 其是整個樹系的一次性作業。 Update-LapsADSchema
cmdlet 可以在使用 Windows LAPS 更新的 Windows Server 2022 或 Windows Server 2019 網域控制站上本機執行,也可以在非網域控制站上執行,只要有支援 Windows LAPS PowerShell 模組即可。
PS C:\> Update-LapsADSchema
提示
傳遞 -Verbose
參數來查看有關 Update-LapsADSchema
Cmdlet (或 LAPS PowerShell 模組中的任何其他 Cmdlet) 正在做什麼的詳細資訊。
授與受控裝置密碼更新權限
受管理裝置必須獲授與更新其密碼的權限。 執行此動作的方式是在裝置所在的組織單位 (OU) 上設定可繼承的權限。 Set-LapsADComputerSelfPermission
用於此用途,例如:
PS C:\> Set-LapsADComputerSelfPermission -Identity NewLaps
Name DistinguishedName
---- -----------------
NewLAPS OU=NewLAPS,DC=laps,DC=com
提示
如果您偏好在網域根目錄上設定可繼承的權限,則可以使用 DN 語法指定整個網域根目錄。 例如,針對 -Identity 參數指定 'DC=laps,DC=com'。
查詢擴展權限
某些使用者或群組可能已獲授與受管理裝置 OU 的擴充權限。 此權限有問題,因為其授與讀取機密屬性的能力 (所有 Windows LAPS 密碼屬性都會標示為機密)。 若要查看獲授與這些權限的人員,其中一種方式是使用 Find-LapsADExtendedRights
Cmdlet。 例如:
PS C:\> Find-LapsADExtendedRights -Identity newlaps
ObjectDN ExtendedRightHolders
-------- --------------------
OU=NewLAPS,DC=laps,DC=com {NT AUTHORITY\SYSTEM, LAPS\Domain Admins}
在此範例中的輸出中,只有受信任的實體 (SYSTEM 和 Domain Admins) 具有權限。 不需要採取其他動作。
設定裝置原則
完成幾個步驟來設定裝置原則。
選擇原則部署機制
第一步是選擇要如何在您的裝置上套用原則。
大部分的環境都會使用 Windows LAPS 群組原則,將必要的設定部署到已加入 Windows Server Active Directory 網域的裝置。
如果您的裝置也混合加入 Microsoft Entra ID,則可以透過將 Microsoft Intune 與 Windows LAPS 組態服務提供者 (CSP) 結合使用來部署策略。
設定特定原則
您必須將 BackupDirectory 設定的值至少設為 2 (將密碼備份至 Windows Server Active Directory)。
如果您未設定 AdministratorAccountName 設定,Windows LAPS 會預設為管理預設的內建本機 Administrator 帳戶。 系統會使用已知的相對識別碼 (RID) 自動識別此內建帳戶,且絕不應該使用名稱來進行識別。 內建本機 Administrator 帳戶的名稱會有所不同,取決於裝置的預設地區設定。
如果您想要設定自訂的本機 Administrator 帳戶,請使用該帳戶的名稱設定 AdministratorAccountName 設定。
重要
如果您設定 Windows LAPS 來管理自訂的本機 Administrator 帳戶,則必須確定已建立該帳戶。 Windows LAPS 不會建立該帳戶。 建議您使用 RestrictedGroups CSP 來建立帳戶。
您可以視組織的需要來設定其他設定,例如 PasswordLength。
當您未配置指定的設定時,就會套用預設值 - 請務必了解這些預設值。 例如,若啟用密碼加密卻未設定 ADPasswordEncryptionPrincipal 設定,則會加密密碼,只讓網域管理員解密。 如果您希望非網域管理員能夠解密,則可以使用不同的設定來設定 ADPasswordEncryptionPrincipal。
更新 Windows Server Active Directory 中的密碼
Windows LAPS 會定期 (每小時) 處理目前使用中的原則,並回應群組原則變更通知。 其會根據原則和變更通知回應。
若要驗證是否已在 Azure Active Directory 中成功更新密碼,請在事件記錄檔中尋找 10018 事件:
若要避免在套用原則之後空等,您可以執行 Invoke-LapsPolicyProcessing
PowerShell Cmdlet。
從 Windows Server Active Directory 擷取密碼
使用 Get-LapsADPassword
Cmdlet 從 Windows Server Active Directory 擷取密碼。 例如:
PS C:\> Get-LapsADPassword -Identity lapsAD2 -AsPlainText
ComputerName : LAPSAD2
DistinguishedName : CN=LAPSAD2,OU=NewLAPS,DC=laps,DC=com
Account : Administrator
Password : Zlh+lzC[0e0/VU
PasswordUpdateTime : 7/1/2022 1:23:19 PM
ExpirationTimestamp : 7/31/2022 1:23:19 PM
Source : EncryptedPassword
DecryptionStatus : Success
AuthorizedDecryptor : LAPS\Domain Admins
此輸出結果指出已啟用密碼加密 (請參閱Source
)。 密碼加密要求您的網域是針對 Windows Server 2016 網域功能等級或更新等級所設定的。
輪替密碼
在每個原則處理週期期間,Windows LAPS 會從 Windows Server Active Directory 讀取密碼到期時間。 如果密碼過期,則會立即產生並儲存新密碼。
在某些情況下 (例如,在出現安全性缺口後或為了進行臨機操作測試),您可能想要提前輪替密碼。 若要以手動方式強制輪替密碼,您可以使用 Reset-LapsPassword
Cmdlet。
您可以使用 Set-LapsADPasswordExpirationTime
Cmdlet,將排定的密碼到期時間設定為儲存在 Windows Server Active Directory 中。 例如:
PS C:\> Set-LapsADPasswordExpirationTime -Identity lapsAD2
DistinguishedName Status
----------------- ------
CN=LAPSAD2,OU=NewLAPS,DC=laps,DC=com PasswordReset
下次 Windows LAPS 醒來以處理目前的原則時,其會看到修改過的密碼到期時間,並輪替密碼。 如果您不想要等候,您可以執行 Invoke-LapsPolicyProcessing
Cmdlet。
您可以使用 Reset-LapsPassword
Cmdlet,在本機強制立即輪替密碼。
在 AD 災害復原情況下擷取密碼
擷取 Windows LAPS 密碼 (包括 DSRM 密碼) 通常需要至少有一個 Active Directory 網域控制站可供使用。 但是,請考慮一個災難性情況,其中網域中的所有網域控制站都已關閉。 在此情況下,您要如何復原密碼?
Active Directory 管理最佳做法建議定期儲存所有網域控制站的定期備份。 藉由指定 -Port
參數,即可使用 Get-LapsADPassword
PowerShell Cmdlet查詢儲存在掛接備份AD資料庫中的Windows LAPS 密碼。 Cmdlet Get-LapsADPassword
最近已改善,因此當 和 -RecoveryMode
參數都指定時-Port
,密碼復原會成功,而不需要連絡域控制器。 此外,Get-LapsADPassword
現在支援在工作群組 (未加入網域) 電腦上以此模式執行。
提示
dsamain.exe公用程式可用來掛接 AD 備份媒體,並透過 LDAP 進行查詢。 默認不會安裝Dsamain.exe,因此必須新增。 執行此動作的其中一種方式是使用 Enable-WindowsOptionalFeature
Cmdlet。 在 Windows 用戶端機器上,您可以執行 Enable-WindowsOptionalFeature -Online -FeatureName DirectoryServices-ADAM-Client
。 您可以在 Windows Server 電腦上執行 Enable-WindowsOptionalFeature -Online -FeatureName DirectoryServices-ADAM
以下範例假設 AD 備份資料庫本機掛接在連接埠 50000 上:
PS C:\> Get-LapsADPassword -Identity lapsDC -AsPlainText -Port 50000 -RecoveryMode
ComputerName : LAPSDC
DistinguishedName : CN=LAPSDC,OU=Domain Controllers,DC=laps,DC=com
Account : Administrator
Password : ArrowheadArdentlyJustifyingKryptonVixen
PasswordUpdateTime : 8/15/2024 10:31:51 AM
ExpirationTimestamp : 9/14/2024 10:31:51 AM
Source : EncryptedDSRMPassword
DecryptionStatus : Success
AuthorizedDecryptor : S-1-5-21-2127521184-1604012920-1887927527-35197
重要
當從掛接在工作群組電腦的 AD 備份資料庫擷取加密的 Windows LAPS 密碼時,AuthorizedDecryptor 欄位將始終以原始 SID 格式顯示,因為工作群組電腦無法將該 SID 翻譯為易記名稱。
重要
Windows 測試人員組建 27695 及更高版本支援適用於用戶端和伺服器 OS 版本的已改進 Get-LapsADPassword 密碼擷取功能。
另請參閱
- 使用 Microsoft Entra ID 的 Windows 本機管理員密碼解決方案簡介
- Microsoft Entra ID 中的 Windows 本機管理員密碼解決方案
- RestrictedGroups CSP
- Microsoft Intune
- Windows LAPS 的 Microsoft Intune 支援
- Windows LAPS CSP
- Windows LAPS 疑難排解指導方針