Hướng dẫn thực tế Windows LAPS ── ngừng mật khẩu quản trị viên cục bộ dùng chung trên mọi PC

· · Windows, Bảo mật, LAPS, Quản lý mật khẩu, Active Directory, Intune, PowerShell, Hệ thống thông tin

Hiện trường cấp phát PC có một “lối tắt quen thuộc” tồn tại đã lâu. Nung mật khẩu quản trị viên cục bộ dùng chung vào image master rồi triển khai ra mọi máy ── khi vào bảo trì chỉ cần đăng nhập bằng mật khẩu đó, nên về quy trình thì trông hợp lý. Tuy nhiên, cấu hình này hiện là điểm bị nhắm đầu tiên như “sản xuất hàng loạt chìa khóa vạn năng” đối với kẻ tấn công. Vì xâm nhập một máy sẽ biến thành xâm nhập toàn bộ.

Bài viết này hướng tới nhân viên IT doanh nghiệp vừa và nhỏ, và nhà phát triển nhận việc cấp phát PC cùng vận hành bảo trì. Nó sắp xếp vì sao mật khẩu quản trị viên cục bộ dùng chung lại nguy hiểm, rồi dựa trên nguồn gốc tính đến tháng 8 năm 2026, giải thích cơ chế Windows LAPS (Local Administrator Password Solution) đã gắn trong OS, cách chọn theo môi trường, quy trình triển khai, và các cạm bẫy vận hành. Đây là phần tiếp theo của loạt bảo mật hướng IT, nối tiếp BitLocker, việc ngừng WSUS, firewall, và kho chứng chỉ.

1. Kết luận trước

  • Mật khẩu quản trị viên cục bộ dùng chung trên mọi PC là mảnh đất cho lan ngang (lateral movement), biến xâm nhập một máy thành xâm nhập toàn bộ. Cùng mật khẩu thì NT hash cũng giống nhau, nên một máy bị lấy hash thì các máy còn lại bị vào bằng Pass-the-Hash.1
  • Windows LAPS là tính năng chuẩn của OS, ngẫu nhiên hóa mật khẩu quản trị viên cục bộ theo từng máy và xoay vòng tự động. Microsoft nêu đây là lợi ích đầu tiên như biện pháp chống Pass-the-Hash và lan ngang.1
  • Nó được gắn vào Windows 10/11 từ bản cập nhật ngày 11 tháng 4 năm 2023, và Windows Server 2019/2022 trở đi. Khác LAPS cũ (phân phối MSI), không cần cài thêm. LAPS cũ bị deprecated từ Windows 11 23H2.1
  • Nơi lưu mật khẩu là một trong hai: Active Directory hoặc Microsoft Entra ID. Máy chỉ tham gia miền lưu vào AD, máy chỉ Entra-joined lưu vào Entra ID, máy hybrid-joined chọn một bên. Máy workgroup không tham gia bên nào thì không dùng được.1
  • Mặc định không có gì xảy ra. Giá trị mặc định của BackupDirectory là “Disabled”, nên chỉ khi chính sách (GPO hoặc Intune/CSP) nêu rõ nơi lưu thì mới bắt đầu chạy.2
  • Lưu AD cần ba bước chuẩn bị trước. Mở rộng schema (Update-LapsADSchema), quyền tự ghi của máy tính (Set-LapsADComputerSelfPermission), và thiết kế quyền xem (Set-LapsADReadPasswordPermission).3
  • Xem mật khẩu bằng Get-LapsADPassword / Get-LapsAADPassword, áp ngay bằng Invoke-LapsPolicyProcessing, xoay vòng ngay trên máy bằng Reset-LapsPassword.4
  • Mật khẩu đã dùng tự trở thành dùng một lần. Sau xác thực bằng tài khoản được quản, mặc định 24 giờ sau sẽ reset + đăng xuất (PostAuthenticationActions).2

Bản đồ tri thức của bài viết này

Mật khẩu quản trị viên cục bộ dùng chung mọi PC, vì cùng mật khẩu thì NT hash cũng giống nhau, khiến hash lấy từ một máy thành chìa khóa vạn năng sang máy khác và dẫn tới lan ngang bằng Pass-the-Hash. Windows LAPS là tính năng chuẩn của OS cắt đường này bằng cách ngẫu nhiên hóa mật khẩu theo từng máy rồi xoay vòng tự động; nơi lưu là một trong Active Directory hoặc Microsoft Entra ID, máy workgroup không tham gia bên nào thì không dùng được. Mặc định BackupDirectory tắt nên không có gì xảy ra cho đến khi GPO hoặc LAPS CSP của Intune nêu rõ nơi lưu. Lưu AD lấy mở rộng schema làm tiền đề; thuộc tính mật khẩu được thêm là thuộc tính mật, nhưng principal giữ quyền mở rộng trên OU đích vẫn đọc được nên cần hai tầng thu hẹp bên giải mã bằng lưu mã hóa. Mật khẩu đã lấy được PostAuthenticationActions tự reset 24 giờ sau xác thực, nhưng điểm khởi là xác thực chứ không phải tra cứu.

Bản đồ tri thức Windows LAPS và mật khẩu quản trị viên cục bộ dùng chungSơ đồ cho thấy khung mật khẩu quản trị viên cục bộ dùng chung mọi PC dẫn tới lan ngang bằng Pass-the-Hash, Windows LAPS cắt đường đó thế nào, cùng quan hệ nơi lưu, chuẩn bị trước, quyền xem, cơ chế dùng một lần, và LAPS cũcó thể gâysử dụngcó thể gâyngăn chặngiảm thiểutự động hóasử dụngcó thể gâycó thể gâykế nhiệmcó thể gâykhông tương thíchkhông tương thíchlưu tronglưu trongkhông tương thíchyêu cầucấu hình bằngcấu hình bằngsử dụngyêu cầusử dụngngăn chặnxác minh bằnggiảm thiểuyêu cầusử dụngsử dụngyêu cầucấu hình bằngxác minh bằngWindows LAPSMật khẩu quản trị viên cục bộ dùng chung mọi PCPass-the-HashNT hashLan ngang (lateral movement)Tài khoản quản trị viên cục bộTài khoản Administrator built-inTrạng thái tài khoản được quản vẫn tắtLAPS cũ (legacy Microsoft LAPS)Quản kép cùng một tài khoảnChế độ giả lập LAPS cũLưu mã hóa mật khẩu LAPSActive Directory (AD DS)Microsoft Entra IDCấu hình workgroupThiết lập BackupDirectoryGroup PolicyLAPS CSPMicrosoft IntuneLưu mật khẩu LAPS vào Active DirectoryMở rộng schema AD của Windows LAPS (msLAPS-*)Thuộc tính mật (confidential)Quyền mở rộng (All Extended Rights)Bảo vệ đọc bằng thuộc tính mậtMô-đun LAPS PowerShellDomain functional level (DFL)PostAuthenticationActionsNhật ký LAPS/Operational

Trong sơ đồ, đường liền nét biểu thị quan hệ luôn đúng và đường nét đứt biểu thị quan hệ có điều kiện (điều kiện nằm trong phần giải thích từng quan hệ trên trang chi tiết). Danh sách đầy đủ các quan hệ (tổng 31, kèm bằng chứng và mức chắc chắn) cùng định nghĩa các khái niệm chính được tập hợp tại trang chi tiết bản đồ tri thức (bằng tiếng Nhật). Dữ liệu: JSON-LD / Turtle

2. Vì sao mật khẩu quản trị viên cục bộ dùng chung trên mọi PC lại nguy hiểm

Trước hết hãy nắm đúng khung mối đe dọa. Nếu mật khẩu tài khoản quản trị viên cục bộ (Administrator built-in, hoặc tài khoản bảo trì tạo lúc cấp phát) giống nhau trên mọi máy, chuyện gì xảy ra?

Windows không giữ mật khẩu tài khoản cục bộ ở dạng thuần; nó giữ NT hash tính từ mật khẩu. Và trong xác thực NTLM, chính hash đó là nguyên liệu xác thực. Nghĩa là cùng mật khẩu thì hash cũng giống nhau trên mọi máy. Khi kẻ tấn công lấy được quyền quản trị viên trên một máy qua malware hay tấn công có chủ đích, chúng lấy hash từ bộ nhớ hoặc cơ sở dữ liệu cục bộ (SAM). Từ đây mới là phần chính: hash lấy ra dùng để xác thực mà không cần đưa về mật khẩu thuần. Đó là tấn công Pass-the-Hash. Trong môi trường mật khẩu dùng chung, hash lấy từ một máy trở thành “chìa khóa vạn năng” cho mọi máy còn lại, và xâm nhập lan ngang rất nhanh. Cơ chế xác thực NTLM và vì sao chỉ hash cũng đủ để xác thực được giải thích chi tiết trong “Giải thích NTLM và Kerberos bằng hình”.

Mật khẩu dùng chung lan ngang bằng Pass-the-HashCùng NT hash trên mọi máy thì xâm nhập một máy lan ra mọi máy; LAPS tách mật khẩu từng máy thì cắt được đường nàySau khi triển khai LAPSvì mật khẩu khác nhau từng máyLấy hash của PC-01Xâm nhập PC-01Hash này không xác thực đượctrên PC khác (chặn lan ngangqua quản trị viên cục bộ)Môi trường mật khẩu dùng chungPass-the-HashPass-the-HashPass-the-HashLấy NT hash của quản trị viênXâm nhập PC-01(malware, tấn công có chủ đích)PC-02PC-03…lan ngang sang mọi máy

Hình 1: Mật khẩu dùng chung biến một hash thành chìa khóa mọi máy; LAPS cắt đường đó bằng mật khẩu khác nhau từng máy.

Hướng đối phó rõ ràng: đặt mật khẩu quản trị viên cục bộ khác nhau từng máy, và đổi định kỳ. Khi đó, hash rò từ một máy không dùng được trên máy khác, và bạn cắt đường lan ngang do tái sử dụng tài khoản quản trị viên cục bộ (lưu ý rằng các đường lan ngang khác — như đánh cắp thông tin đăng nhập miền trên PC đã bị xâm nhập — không vì thế mà bị bịt). Tuy nhiên, làm tay không thực tế. Sinh mật khẩu riêng cho hàng chục máy, quản bằng sổ cái, rồi đi cập nhật định kỳ ── chính chi phí vận hành đó khiến lối tắt mật khẩu dùng chung sống sót. Việc OS nhận lấy “cá nhân hóa và đổi định kỳ tự động”, kèm lưu an toàn vào thư mục, chính là Windows LAPS. Bản thân Microsoft nêu lợi ích đầu tiên của Windows LAPS là “bảo vệ khỏi tấn công Pass-the-Hash và tấn công lan ngang (lateral-traversal)”.1

Ngoài ra, về nguyên tắc quản lý đặc quyền — không làm việc hàng ngày bằng tài khoản quản trị viên, thu hẹp mục đích tài khoản bảo trì — hãy xem thêm “Khi nào thật sự cần đặc quyền quản trị viên trên Windows”.

3. Windows LAPS là gì ── khác LAPS cũ thế nào

Tên LAPS có lịch sử, và trên thực tế nếu không phân biệt “đang nói LAPS nào” thì cuộc trò chuyện không khớp.

LAPS cũ (legacy Microsoft LAPS) là công cụ cài thêm mà Microsoft công bố năm 2016.1 Phát MSI tới mọi máy để cài phần mở rộng Group Policy (CSE), lưu mật khẩu dạng thuần vào thuộc tính ms-Mcs-AdmPwd của Active Directory — lâu nay đó là chuẩn thực tế.

Windows LAPS là hiện thực khác, gắn trong OS như sản phẩm kế nhiệm. Nó có trong Windows 10, Windows 11 21H2/22H2, Windows Server 2019/2022 từ bản cập nhật ngày 11 tháng 4 năm 2023, và có sẵn từ đầu trên Windows 11 23H2 trở đi cùng Windows Server 2025 trở đi.1 Nghĩa là, môi trường đang áp bản cập nhật bình thường thì PC nội bộ đã có Windows LAPS. Chỉ còn việc đặt chính sách.

Khía cạnh LAPS cũ (legacy) Windows LAPS
Hình thức cung cấp Phân phối MSI tới mọi máy rồi cài Gắn trong OS (từ bản cập nhật tháng 4 năm 2023). Không cần cài thêm1
Nơi lưu mật khẩu Chỉ Active Directory Active Directory hoặc Microsoft Entra ID1
Mã hóa trên AD Không hỗ trợ (thuần + bảo vệ ACL) Hỗ trợ (DFL 2016 trở lên cho lưu mã hóa và lịch sử)3
Quản mật khẩu DSRM Không hỗ trợ Quản được cả tài khoản DSRM của domain controller1
Reset tự động sau xác thực Không có Reset tự động + đăng xuất sau xác thực bằng PostAuthenticationActions2
PowerShell Mô-đun AdmPwd.PS Mô-đun LAPS (Get-LapsADPassword, v.v.)4
Từ đây Deprecated từ Windows 11 23H2. OS mới chặn luôn việc cài MSI1 Chuẩn hiện hành

Điểm quan trọng: Windows LAPS không phải bản vá của LAPS cũ mà là hiện thực hoàn toàn khác, và thuộc tính schema AD cũng khác LAPS cũ (msLAPS-*).4 Để giúp di chuyển từ LAPS cũ, còn có “chế độ giả lập” để Windows LAPS diễn giải thiết lập GPO của LAPS cũ, nhưng ràng buộc nhiều (Chương 6) và không có lý do dùng nó cho triển khai mới.

4. Mật khẩu được lưu ở đâu ── bảng quyết định theo môi trường

Windows LAPS “sao lưu” mật khẩu đã sinh vào thư mục. Nơi lưu do trạng thái tham gia của máy quyết định, và không lưu đồng thời vào cả AD lẫn Entra ID.1

Môi trường Nơi lưu Phân phối chính sách Cách xem mật khẩu Quyết định
Chỉ tham gia miền AD Active Directory (thuộc tính msLAPS-* của đối tượng máy tính) Group Policy (LAPS.admx) Get-LapsADPassword, tab thuộc tính trong Active Directory Users and Computers3 Lựa chọn chính cho SME thiên về on-prem. Cần mở rộng schema và đặt quyền trước
Chỉ Entra-joined (+Intune) Microsoft Entra ID Phân phối LAPS CSP từ Intune Trung tâm quản trị Entra/Intune, Get-LapsAADPassword (Microsoft Graph)5 Đã chuyển sang quản lý đám mây thì chọn đây. Cần bật tính năng phía tenant
Hybrid-joined Chọn một trong AD hoặc Entra ID1 GPO hoặc Intune Tùy nơi lưu đã chọn, một trong các cách trên Quyết theo help desk thường xem phía nào khi làm việc
Workgroup (không tham gia) Không có nơi lưu, không dùng được1 Thay bằng mật khẩu riêng từng máy + sổ cái thủ công. Số máy tăng thì cân nhắc Entra join / tham gia miền

Với lưu AD, mật khẩu được ghi vào thuộc tính của đối tượng máy tính (thuần thì msLAPS-Password, mã hóa thì msLAPS-EncryptedPassword, hạn là msLAPS-PasswordExpirationTime).6 Trong số đó các thuộc tính chứa mật khẩu (msLAPS-Password và nhóm mã hóa msLAPS-Encrypted*) được đánh dấu thuộc tính mật (confidential), không xem được bằng quyền đọc thông thường. Ngược lại, hạn msLAPS-PasswordExpirationTime không có dấu mật (SearchFlags: 0), là metadata xem được bằng quyền đọc mặc định.6 Lưu mã hóa và lịch sử mật khẩu cần domain functional level (DFL) 2016 trở lên.3 Điểm cần chú ý: giá trị mặc định của thiết lập mã hóa (ADPasswordEncryptionEnabled) là bật.2 Miền DFL cũ hơn 2016 không dùng được mã hóa, nên đừng trông vào việc tự chuyển sang thuần; hãy tắt mã hóa tường minh bằng chính sách rồi lưu thuần + bảo vệ ACL.3

Với lưu Entra ID, cấu hình chuẩn là bật “quản lý mật khẩu quản trị viên cục bộ” phía tenant, rồi phân phối chính sách từ Intune qua LAPS CSP. Về giấy phép, bản thân Windows LAPS miễn phí, lưu AD không có yêu cầu thêm, và lưu Entra ID dùng được với Microsoft Entra ID Free trở lên.1

Máy workgroup không có biện pháp thay thế vì không tồn tại thư mục làm nơi lưu. Thực tế, lúc cấp phát hãy đặt mật khẩu khác nhau từng máy rồi quản sổ cái bằng trình quản lý mật khẩu. Nếu cấp phát đã được kịch bản hóa, cách chắc là nhúng việc sinh mật khẩu theo máy vào đó (xem “Tự động hóa cấp phát PC bằng winget + PowerShell”).

5. Quy trình triển khai thực tế ── lấy cấu hình AD+GPO làm trục

Ở đây lấy cấu hình miền AD + GPO — vốn chiếm số lượng lớn — làm trục và đi theo từng bước. Khác biệt với cấu hình Entra+Intune được tóm ở cuối.

5.1. Chuẩn bị trước (làm một lần)

Với lưu AD, hãy xong phần chuẩn bị phía forest trước khi phân phối chính sách.3

# 1. Mở rộng schema (một lần cho forest. Chạy với quyền Schema Admins)
Update-LapsADSchema

# 2. Cấp cho máy tính dưới OU đích quyền cập nhật thuộc tính mật khẩu của chính nó
Set-LapsADComputerSelfPermission -Identity "OU=PCNoiBo,DC=example,DC=co,DC=jp"

# 3. Cấp nhóm được xem mật khẩu (Domain Admins xem được theo mặc định)
Set-LapsADReadPasswordPermission -Identity "OU=PCNoiBo,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 4. Cấp nhóm được thao tác hạn mật khẩu (chỉ thị hết hạn = reset ngay)
#    (cần cho Set-LapsADPasswordExpirationTime ở 5.4. Domain Admins làm được theo mặc định)
Set-LapsADResetPasswordPermission -Identity "OU=PCNoiBo,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 5. Kiểm không có người giữ quyền xem ngoài dự kiến (Chương 6 nói kỹ)
Find-LapsADExtendedRights -Identity "OU=PCNoiBo,DC=example,DC=co,DC=jp"

Nếu dùng lưu mã hóa (DFL 2016 trở lên, bật theo mặc định), còn một thiết lập nữa. Quyền xem và quyền giải mã là hai thứ khác nhau; mặc định chỉ Domain Admins giải mã được.3 Nếu muốn nhóm help desk thật sự lấy được mật khẩu, hãy chỉ định cùng nhóm (EXAMPLE\HelpdeskAdmins) ở ADPasswordEncryptionPrincipal phía chính sách.2 Quên bước này thì dù cấp quyền xem đúng như trên, bạn rơi vào trạng thái “đọc được thuộc tính nhưng không giải mã được”.

Update-LapsADSchema khác Update-AdmPwdADSchema của LAPS cũ; cái được thêm là thuộc tính msLAPS-*. Ngay cả môi trường đã triển khai LAPS cũ vẫn cần mở rộng schema cho Windows LAPS lần nữa.4 Nếu đang dùng Central Store của GPO, mẫu Windows LAPS không được Windows Update sao vào Central Store, nên hãy sao thủ công.2 Lúc đó không chỉ %windir%\PolicyDefinitions\LAPS.admx mà cả tài nguyên ngôn ngữ LAPS.adml (với UI tiếng Việt thì thư mục con vi-VN; với UI tiếng Nhật thì ja-JP) cũng phải sao vào thư mục ngôn ngữ tương ứng. Thiếu ADML thì GPMC hiện lỗi tài nguyên khi mở chính sách LAPS.

5.2. Thiết lập chính sách

Vị trí GPO là “Computer Configuration > Policies > Administrative Templates > System > LAPS”.2 Thiết lập bắt buộc tối thiểu là nơi lưu: Windows LAPS không làm gì trừ khi BackupDirectory đặt thành “Active Directory” (giá trị 2) (mặc định là “Disabled”).2 Các thiết lập chính và giá trị mặc định như sau.

Thiết lập Mặc định Cách nghĩ trên thực tế
BackupDirectory Disabled (0) Bắt buộc. AD=2, Entra ID=12
AdministratorAccountName Chưa chỉ định (quản Administrator built-in) Không chỉ định thì tự nhận diện tài khoản built-in bằng RID. Chỉ chỉ định tên khi quản tài khoản bảo trì tùy chỉnh. Bản thân tài khoản không được tạo, phải tạo riêng2
PasswordAgeDays 30 ngày Chu kỳ xoay vòng. 1–365 ngày (lưu Entra tối thiểu 7 ngày)2
PasswordLength / PasswordComplexity 14 ký tự / chữ hoa-thường-số-ký hiệu (4) Mặc định đủ dùng. Độ phức tạp 1–3 dành cho tương thích LAPS cũ, không khuyến nghị2
PasswordExpirationProtectionEnabled Enabled Ngăn gia hạn vượt trần chính sách2
ADPasswordEncryptionEnabled Enabled (cần DFL 2016 trở lên) Lưu mã hóa. Bên giải mã mặc định chỉ Domain Admins (Chương 6)2
PostAuthenticationResetDelay / PostAuthenticationActions 24 giờ / reset+đăng xuất (3) Dùng một lần tự động sau xác thực (Chương 6)2

Điều dễ bỏ sót ở đây là bật/tắt tài khoản được quản. Administrator built-in bị vô hiệu từ lúc cài Windows.7 Windows LAPS vẫn quản mật khẩu của tài khoản đang tắt, nhưng không bật tài khoản.2 Nghĩa là cấu hình mặc định có thể thành “mật khẩu đã lưu trong thư mục nhưng không ai đăng nhập được bằng tài khoản đó”. Để dùng như phương tiện khôi phục, hãy chọn tường minh một trong: bật Administrator built-in rồi vận hành, quản tài khoản bảo trì tùy chỉnh đã bật, hoặc từ Windows 11 24H2 / Server 2025 trở đi thì quản cả trạng thái bật bằng quản lý tài khoản tự động (các thiết lập AutomaticAccountManagement).2

5.3. Xác nhận hoạt động và lấy mật khẩu

Windows LAPS xử lý chính sách đang có hiệu lực mỗi giờ. Khi muốn kiểm mà không chờ áp, hãy chạy xử lý ngay trên máy đích.3

# Phía máy: xử lý chính sách ngay (thói quen khi kiểm thử)
Invoke-LapsPolicyProcessing

# Phía máy: xác nhận kết quả bằng nhật ký sự kiện
# 10003=bắt đầu xử lý / 10004=thành công / 10005=thất bại / 10018=lưu AD thành công
Get-WinEvent -LogName "Microsoft-Windows-LAPS/Operational" -MaxEvents 20

Mật khẩu đã lưu được lấy từ máy quản trị có quyền.3

# Lấy mật khẩu từ AD (không có -AsPlainText thì chuỗi được che)
Get-LapsADPassword -Identity PC-0123 -AsPlainText

# Ví dụ đầu ra: Account, Password, PasswordUpdateTime, ExpirationTimestamp,
#         Source (EncryptedPassword nếu lưu mã hóa), AuthorizedDecryptor, v.v.

Người thích GUI có tab LAPS trên thuộc tính máy tính trong “Active Directory Users and Computers”, và xem được từ đó.1

5.4. Xoay vòng ngay

Khi xong việc bảo trì và đã dùng mật khẩu, hoặc khi nghi bị xâm nhập, hãy xoay ngay mà không chờ chu kỳ thường lệ.3

# Từ máy quản trị: đặt hạn thành "bây giờ" để lần xử lý tới xoay vòng
Set-LapsADPasswordExpirationTime -Identity PC-0123
# Đá xử lý ngay trên máy đích thì mật khẩu mới có mặt tại chỗ
Invoke-LapsPolicyProcessing

# Xoay vòng ngay trực tiếp trên máy đích
Reset-LapsPassword

5.5. Khác biệt khi cấu hình Entra+Intune

Lưu Entra ID không cần mở rộng schema hay đặt ACL như AD.3 Thay vào đó, cần bật quản lý mật khẩu quản trị viên cục bộ trong [Device settings] của tenant Microsoft Entra; quên bước này thì máy không lưu được mật khẩu.5 Chính sách phân phối từ Intune qua LAPS CSP, và mật khẩu lấy từ màn hình trung tâm quản trị Entra/Intune, hoặc Get-LapsAADPassword qua Microsoft Graph.5

# Lấy mật khẩu lưu Entra ID qua Graph (ví dụ truy cập ủy quyền)
# Yêu cầu tường minh các scope cần lúc kết nối
Connect-MgGraph -Scopes "Device.Read.All","DeviceLocalCredential.Read.All"
Get-LapsAADPassword -DeviceIds PC-0123 -IncludePasswords -AsPlainText

ID sự kiện lưu thành công là 10018 với AD, còn Entra ID là 10029.8

6. Cạm bẫy vận hành

Triển khai xong chưa phải hết. Dưới đây lần lượt các điểm dễ giẫm phải trên hiện trường.

6.1. Quyền xem rộng hơn bạn nghĩ

Thuộc tính mật khẩu là thuộc tính mật (confidential) nên quyền đọc thông thường không thấy, nhưng principal giữ quyền mở rộng (All Extended Rights) trên OU đích thì đọc được. Môi trường từng ủy quyền rộng trên OU dễ rơi vào trạng thái nhóm ngoài dự kiến đọc được mật khẩu. Lúc triển khai hãy rà người giữ quyền mở rộng bằng Find-LapsADExtendedRights; nếu hiện ai ngoài SYSTEM và Domain Admins thì hãy xem lại nội dung ủy quyền.3

Hơn nữa, bật lưu mã hóa (ADPasswordEncryptionEnabled) tách quyền xem khỏi quyền giải mã. Chỉ cấp quyền xem thì không giải mã được mật khẩu đã mã hóa; mặc định chỉ Domain Admins giải mã được, và để đổi thì chỉ định nhóm giải mã được bằng ADPasswordEncryptionPrincipal.3 Việc thu hẹp kiểu “help desk chỉ giải mã mật khẩu OU mình phụ trách” được thiết kế bằng hai tầng này.

6.2. Cơ chế “dùng rồi bỏ” và giới hạn ── PostAuthenticationActions

Mật khẩu help desk đã lấy mà cứ nằm trên giấy nhớ hay chat thì vô nghĩa. Windows LAPS phát hiện xác thực bằng tài khoản được quản, rồi sau thời gian ân hạn (PostAuthenticationResetDelay, mặc định 24 giờ) tự dọn dẹp. Hành động mặc định là “reset mật khẩu và đăng xuất”.2

PostAuthenticationActions Hành vi
1 Reset mật khẩu
3 (mặc định) Reset + đăng xuất phiên tương tác (cũng ngắt phiên SMB)2
5 Reset + khởi động lại máy2
11 Reset + đăng xuất + kết thúc tiến trình còn lại (Windows 11 24H2 / Server 2025 trở đi)2

Có hai điểm cần chú ý. Thứ nhất, đặt ân hạn thành 0 thì bản thân tính năng này bị tắt.2 Thứ hai, cò là “xác thực” chứ không phải “tra cứu mật khẩu”. Chỉ lấy mật khẩu từ thư mục rồi không dùng thì reset tự động không chạy. Dù dùng hay không, hãy cố định vào quy trình vận hành việc hết hạn mật khẩu đã tra cứu lúc xong việc bằng Set-LapsADPasswordExpirationTime.

6.3. Dùng chung và di chuyển với LAPS cũ

Nguy hiểm nhất thời kỳ chuyển tiếp là trạng thái cùng một tài khoản bị cả LAPS cũ lẫn Windows LAPS quản. Cấu hình hai cơ chế tranh mật khẩu cùng tài khoản là rủi ro bảo mật và không được hỗ trợ.9 Quy tắc sắp xếp như sau.

  • Trên máy đã áp dù chỉ một chính sách Windows LAPS, bản thân Windows LAPS luôn bỏ qua chính sách LAPS cũ (Windows LAPS thắng).9 Nhưng đó chỉ là cách Windows LAPS diễn giải. Nếu CSE (phần mở rộng Group Policy) của LAPS cũ vẫn còn cài, CSE cũ vẫn xử lý GPO cũ độc lập. Bật chính sách Windows LAPS trong khi máy vẫn nằm trong đối tượng áp GPO cũ sẽ thành trạng thái quản kép, cả hai xoay vòng cùng tài khoản.
  • “Chế độ giả lập” để Windows LAPS xử lý thiết lập GPO của LAPS cũ chỉ chạy trên máy không cài CSE của LAPS cũ. Nó dùng nguyên tiền đề môi trường LAPS cũ (schema cũ, ACL cũ), nhưng tính năng mới như mã hóa hay lưu Entra không dùng được.9
  • Chỉ cần cập nhật OS, máy còn GPO LAPS cũ có thể bất ngờ chạy chế độ giả lập. Nếu muốn tránh đổi mật khẩu ngoài dự kiến ngay sau cấp phát, đặt BackupDirectory=0 bằng khóa cấu hình cục bộ để dừng giả lập.9

Di chuyển theo thứ tự “gỡ máy đích khỏi áp GPO LAPS cũ (hoặc gỡ CSE cũ) → áp chính sách Windows LAPS → dọn GPO cũ và CSE cũ còn lại”, tắt quản cũ rồi mới bật quản mới, để từng máy luôn thuộc đúng một bên quản. Đảo thứ tự (áp chính sách Windows LAPS trước) sẽ gây quản kép trên máy còn CSE cũ như trên.

6.4. Kiểm toán ── giữ “ai xem lúc nào”

Đã lưu tập trung mật khẩu quản trị viên cục bộ thì lịch sử xem là đối tượng kiểm toán. Hoạt động phía máy được ghi hết vào kênh nhật ký sự kiện riêng (Event Viewer: “Applications and Services Logs > Microsoft > Windows > LAPS > Operational”); bạn thấy bắt đầu xử lý 10003/thành công 10004/thất bại 10005, lưu thành công 10018 (AD)/10029 (Entra), nội dung chính sách đang áp 10021–10023, v.v.8 Phía AD, Set-LapsADAuditing cấu hình kiểm toán trên OU đích và ghi truy cập thuộc tính mật khẩu vào nhật ký Security của domain controller.4 Với lưu Entra ID, theo dõi bằng nhật ký kiểm toán và báo cáo phía Entra.1

7. Tóm tắt

  • Mật khẩu quản trị viên cục bộ dùng chung trên mọi PC tạo khung xâm nhập một máy lan sang toàn bộ bằng Pass-the-Hash. Đối phó là cá nhân hóa từng máy và xoay vòng tự động; Windows LAPS đảm nhận việc đó.
  • Windows LAPS đã gắn sẵn trong Windows 10/11 từ bản cập nhật tháng 4 năm 2023, và Windows Server 2019/2022 trở đi; không cần cài thêm. LAPS cũ (phân phối MSI) đã deprecated, triển khai mới chỉ còn Windows LAPS.
  • Nơi lưu là một trong AD hoặc Entra ID, do trạng thái tham gia của máy quyết định. Máy workgroup không dùng được nên cần quản riêng thủ công hoặc xem lại hình thức tham gia.
  • Mặc định là tắt. Với cấu hình AD, chuẩn bị ba điểm — mở rộng schema, quyền tự cập nhật, quyền xem — rồi đặt BackupDirectory bằng GPO thì mới chạy.
  • Vận hành hàng ngày lấy PowerShell làm trục. Lấy bằng Get-LapsADPassword / Get-LapsAADPassword, áp ngay bằng Invoke-LapsPolicyProcessing, xoay vòng ngay bằng Reset-LapsPassword.
  • Cạm bẫy là xem ngoài dự kiến do quyền mở rộng, PostAuthenticationActions không chạy nếu chỉ tra cứu, quản kép với LAPS cũ, và kiểm toán chưa dựng. Lúc triển khai hãy cố định kiểm quyền bằng Find-LapsADExtendedRights và quy trình hết hạn sau khi tra cứu.

Bài viết liên quan

Lĩnh vực tư vấn liên quan

KomuraSoft LLC đảm nhận viết kịch bản tự động hóa cấp phát PC, chỉnh thiết lập bảo mật thiết bị gồm triển khai Windows LAPS, và lập kế hoạch di chuyển khỏi vận hành mật khẩu dùng chung hiện có. Bắt đầu từ giai đoạn “có runbook cấp phát nhưng đang lệ thuộc người” hay “muốn đưa LAPS vào nhưng chưa chắc về đặt quyền AD” cũng được.

Liên kết tham khảo

  1. Microsoft Learn, What is Windows LAPS?. Về Windows LAPS là tính năng Windows tự động quản và sao lưu mật khẩu tài khoản quản trị viên cục bộ trên thiết bị Entra-joined hoặc AD-joined; về OS được hỗ trợ (Windows 10, Windows 11 21H2/22H2, Windows Server 2019/2022 từ bản cập nhật 11 tháng 4 năm 2023, và Windows 11 23H2 trở đi cùng Windows Server 2025 trở đi có sẵn); về lợi ích đầu tiên là bảo vệ khỏi tấn công Pass-the-Hash và lan ngang; về ràng buộc nơi lưu theo trạng thái tham gia (chỉ Entra-joined → Entra ID, chỉ AD-joined → AD, hybrid → chọn một, không lưu cả hai); về LAPS cũ bị deprecated từ Windows 11 23H2 và OS mới chặn cài MSI; về LAPS cũ là sản phẩm khác công bố năm 2016 còn Windows LAPS là hiện thực hoàn toàn khác; về quản qua màn hình thuộc tính Active Directory Users and Computers, kênh nhật ký sự kiện riêng, và mô-đun PowerShell; về bản thân tính năng miễn phí, lưu AD không cần giấy phép thêm, lưu Entra ID dùng được với Entra ID Free trở lên.  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. Về cấu hình chính sách bằng GPO (Computer Configuration > Policies > Administrative Templates > System > LAPS, mẫu ở %windir%\PolicyDefinitions\LAPS.admx) và LAPS CSP; về cần sao thủ công LAPS.admx vào GPO Central Store; về giá trị mặc định từng thiết lập (BackupDirectory=Disabled, PasswordAgeDays=30 ngày, tối thiểu 1 ngày, lưu Entra tối thiểu 7 ngày, PasswordLength=14, PasswordComplexity=4 với 1–3 dành cho tương thích LAPS cũ, PasswordExpirationProtectionEnabled=Enabled, ADPasswordEncryptionEnabled=Enabled và cần DFL 2016 trở lên, PostAuthenticationResetDelay=24 giờ và đặt 0 thì tắt, PostAuthenticationActions=3); về khi không chỉ định AdministratorAccountName thì tự nhận diện tài khoản built-in bằng RID và LAPS không tạo tài khoản tùy chỉnh; về từng giá trị PostAuthenticationActions (1=reset, 3=reset+đăng xuất+xóa phiên SMB, 5=reset+khởi động lại, 11=reset+đăng xuất+kết thúc tiến trình từ Windows 11 24H2/Server 2025 trở đi).  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. Về mở rộng schema một lần cho forest bằng Update-LapsADSchema; về cấp quyền tự cập nhật của máy tính bằng Set-LapsADComputerSelfPermission; về cấp quyền xem bằng Set-LapsADReadPasswordPermission (Domain Admins xem được theo mặc định); về cấp quyền đặt hạn (hết hạn ngay) bằng Set-LapsADResetPasswordPermission (Domain Admins giữ theo mặc định); về quyền xem và quyền giải mã là khác nhau, ADPasswordEncryptionPrincipal (mặc định Domain Admins) quyết định ai giải mã được; về kiểm người giữ quyền mở rộng bằng Find-LapsADExtendedRights (mọi thuộc tính mật khẩu LAPS là thuộc tính mật, người giữ quyền mở rộng đọc được); về BackupDirectory=2 là bắt buộc; về chính sách được xử lý mỗi giờ và xác nhận lưu AD thành công bằng sự kiện 10018; về xử lý ngay bằng Invoke-LapsPolicyProcessing; về lấy bằng Get-LapsADPassword; về đặt hết hạn bằng Set-LapsADPasswordExpirationTime và xoay vòng ngay trên máy bằng Reset-LapsPassword; về mã hóa cần DFL 2016 trở lên, dưới đó chỉ lưu thuần (bảo vệ ACL).  2 3 4 5 6 7 8 9 10 11 12 13

  4. Microsoft Learn, Overview of Windows LAPS PowerShell cmdlets. Về vai trò từng cmdlet của mô-đun LAPS PowerShell (Get-LapsAADPassword, Get-LapsADPassword, Invoke-LapsPolicyProcessing, Reset-LapsPassword, Set-LapsADAuditing, Set-LapsADComputerSelfPermission, Set-LapsADPasswordExpirationTime, Set-LapsADReadPasswordPermission, Set-LapsADResetPasswordPermission, Update-LapsADSchema, Find-LapsADExtendedRights, Get-LapsDiagnostics); về bảng tương ứng với mô-đun AdmPwd.PS của LAPS cũ; về cmdlet Windows LAPS vận hành trên mở rộng schema hoàn toàn khác LAPS cũ.  2 3 4 5

  5. Microsoft Learn, Get started with Windows LAPS and Microsoft Entra ID. Về lưu Entra ID cần bật tính năng trong Device settings của tenant; về phân phối chính sách tới thiết bị Entra-joined khuyến nghị Intune+LAPS CSP; về tập con thiết lập áp khi lưu Entra; về lấy mật khẩu qua Microsoft Graph (Get-LapsAADPassword là wrapper Graph PowerShell) hoặc màn hình trung tâm quản trị Entra/Intune; về quyền Graph cần thiết (Device.Read.All và DeviceLocalCredential.Read.All hoặc DeviceLocalCredential.ReadBasic.All); về xác nhận lưu thành công bằng sự kiện 10029.  2 3

  6. Microsoft Learn, Windows LAPS schema extensions reference. Về đặc tả các thuộc tính msLAPS-* mà Update-LapsADSchema thêm vào đối tượng máy tính (msLAPS-Password=mật khẩu thuần và thông tin kèm, msLAPS-PasswordExpirationTime=hạn, msLAPS-EncryptedPassword=mật khẩu mã hóa, v.v.); về SearchFlags của thuộc tính kiểu mật khẩu là 904 (gồm fCONFIDENTIAL=thuộc tính mật) trong khi SearchFlags của msLAPS-PasswordExpirationTime là 0, không đánh dấu mật.  2

  7. Microsoft Learn, Local accounts. Về tài khoản Administrator built-in bị vô hiệu khi cài Windows và một tài khoản cục bộ khác thuộc nhóm Administrators được tạo thay; về tài khoản Administrator đã vô hiệu không dùng được trừ ngoại lệ Safe Mode; về tái sử dụng mật khẩu tài khoản quản trị viên cục bộ tạo rủi ro lan ngang bằng Pass-the-Hash và LAPS được nêu là biện pháp đầu tiên để ngẫu nhiên hóa. 

  8. Microsoft Learn, Use Windows LAPS event logs. Về mọi hoạt động được ghi vào kênh nhật ký sự kiện riêng (Event Viewer, Applications and Services Logs > Microsoft > Windows > LAPS > Operational); về bắt đầu xử lý chính sách 10003, thành công 10004, thất bại 10005; về ghi nội dung chính sách đang áp (lưu AD 10021, lưu Entra 10022, giả lập LAPS cũ 10023); về sự kiện lưu mật khẩu thành công (AD=10018, Entra ID=10029).  2

  9. Microsoft Learn, Get started with Windows LAPS in legacy Microsoft LAPS emulation mode. Về ràng buộc của chế độ giả lập để Windows LAPS diễn giải thiết lập GPO của LAPS cũ (chỉ lưu thuần; mở rộng schema cũ, định nghĩa GPO cũ, quản ACL cũ cần cài LAPS cũ; khi có chính sách Windows LAPS thì luôn ưu tiên phía đó và bỏ qua chính sách cũ; không chạy trên máy đã cài CSE của LAPS cũ); về cấu hình cùng tài khoản bị hai cơ chế quản là rủi ro bảo mật và không được hỗ trợ; về đặt BackupDirectory=0 trên khóa cấu hình cục bộ để chặn chế độ giả lập.  2 3 4

Các bài viết gần đây có cùng thẻ để tìm hiểu sâu hơn những chủ đề lân cận.

Các trang này đặt chủ đề trong bối cảnh rộng hơn của dịch vụ và quyết định.

Bài viết liên quan trực tiếp đến các dịch vụ sau.

Câu hỏi thường gặp

Các câu hỏi thường gặp khi tư vấn về chủ đề của bài viết.

Chúng tôi đã vận hành LAPS cũ (Microsoft LAPS phân phối bằng MSI). Có cần làm gì không?
Hãy bắt đầu lập kế hoạch di chuyển. LAPS cũ bị deprecated từ Windows 11 23H2 trở đi, và trên OS mới việc cài MSI bản thân bị chặn. OS hiện hành (Windows 10/11 đã áp bản cập nhật tháng 4 năm 2023, Windows Server 2019/2022 trở đi) đã có Windows LAPS tích hợp, nên bạn di chuyển mà không cần cài thêm. Trong thời kỳ chuyển tiếp, bạn có thể để Windows LAPS tiếp tục xử lý chính sách cũ qua "chế độ giả lập LAPS cũ", nhưng có ràng buộc: nó không chạy trên máy còn CSE của LAPS cũ, và các tính năng mới như mã hóa hay lưu Entra ID không dùng được. Cấu hình cùng một tài khoản bị cả hai hệ quản không được hỗ trợ, nên hãy chuyển theo từng máy, làm rõ bên nào đang quản.
Sau khi dùng mật khẩu đã lấy, cứ để vậy có sao không?
Với cấu hình mặc định thì việc dọn dẹp diễn ra tự động, nhưng không phải ngay lập tức. Windows LAPS có PostAuthenticationActions, phát hiện xác thực (đăng nhập) bằng tài khoản được quản rồi xử lý sau thời gian ân hạn; mặc định mật khẩu được đặt lại và phiên được đăng xuất 24 giờ sau xác thực. Nói ngược lại, cùng mật khẩu đó vẫn dùng được cho đến khi ân hạn hết, nên nó không vô hiệu ngay lúc bạn dùng. Cơ chế này chạy khi bạn xác thực bằng mật khẩu — không phải khi chỉ tra cứu từ thư mục. Cách chắc chắn là hết hạn tường minh khi xong việc. Với lưu AD, hết hạn bằng Set-LapsADPasswordExpirationTime (cmdlet này chỉ dành cho lưu AD). Với lưu Entra ID, chạy Reset-LapsPassword trên máy đích, hoặc dùng thao tác xoay vòng mật khẩu quản trị viên cục bộ của Intune.
PC vận hành workgroup, không tham gia miền cũng không tham gia Entra ID, có dùng được không?
Không dùng được. Windows LAPS cần Active Directory hoặc Microsoft Entra ID làm nơi lưu mật khẩu, và máy không tham gia bên nào thì không có nơi sao lưu. Nếu tiếp tục workgroup, lựa chọn thực tế là vận hành thủ công: đặt mật khẩu quản trị viên cục bộ khác nhau từng máy rồi quản sổ cái ở nơi an toàn (trình quản lý mật khẩu, v.v.). Khi số máy tăng, đó là lúc cân nhắc chuyển sang Entra join (+Intune) hoặc tham gia miền để hưởng lợi ích quản lý tập trung, gồm cả LAPS.
Ai xem được mật khẩu đã lưu?
Với lưu Active Directory, mặc định chỉ thành viên Domain Admins xem được; người dùng hoặc nhóm khác được cấp quyền tường minh bằng Set-LapsADReadPasswordPermission. Tuy nhiên, dù thuộc tính mật khẩu là thuộc tính mật (confidential), principal giữ quyền mở rộng (All Extended Rights) trên OU vẫn đọc được, nên lúc triển khai hãy luôn kiểm người giữ ngoài dự kiến bằng Find-LapsADExtendedRights. Bật mã hóa bằng ADPasswordEncryptionEnabled nữa (cần domain functional level 2016 trở lên), bạn thu hẹp bên giải mã vào nhóm chỉ định ở ADPasswordEncryptionPrincipal. Với lưu Entra ID, các vai trò đặc quyền như Global Administrator xem được theo mặc định, và lấy qua Microsoft Graph cần quyền DeviceLocalCredential.Read.All.
Dùng Windows LAPS có cần giấy phép thêm không?
Bản thân tính năng là miễn phí. Windows LAPS là tính năng chuẩn gắn trong Windows được hỗ trợ, và lưu mật khẩu vào Active Directory không có yêu cầu giấy phép thêm. Lưu vào Microsoft Entra ID cũng dùng được với giấy phép Microsoft Entra ID Free trở lên. Chỉ lưu ý các tính năng Entra/Intune xung quanh — như giấy phép Intune nếu phân phối chính sách qua Intune — có thể có yêu cầu giấy phép riêng, nên hãy kiểm đúng chỗ đó.

Hồ sơ tác giả

Trang giới thiệu tác giả bài viết.

Go Komura

Đại diện của KomuraSoft LLC

Chuyên về phát triển phần mềm Windows, tư vấn kỹ thuật và điều tra lỗi, đặc biệt trong các dự án có hệ thống hiện hữu và lỗi khó tái hiện.

Liên kết công khai

Quay lại blog