คู่มือปฏิบัติ Windows LAPS — เลิกใช้รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซี

· · Windows, ความปลอดภัย, LAPS, การจัดการรหัสผ่าน, Active Directory, Intune, PowerShell, ระบบสารสนเทศ

ที่งานจัดเตรียมเครื่อง มี «ทางลัดประจำ» ที่อยู่มาเนิ่นนาน เผารหัสผ่านผู้ดูแลท้องถิ่นร่วมกันลงมาสเตอร์อิมเมจ แล้วกางไปทุกเครื่อง ── พอเข้าซ่อมบำรุงก็ล็อกออนด้วยรหัสนั้น จึงดูสมเหตุสมผลในฐานะขั้นตอน แต่โครงนี้ตอนนี้ถูกเล็งเป็นจุดแรกในฐานะ «การผลิตลูกกุญแจจำนวนมาก» สำหรับผู้โจมตี เพราะการบุกรุกหนึ่งเครื่องกลายเป็นการบุกรุกทุกเครื่องทันที

บทความนี้มุ่งเจ้าหน้าที่สารสนเทศของธุรกิจขนาดกลางและเล็ก และนักพัฒนาที่รับจัดเตรียมเครื่องและดำเนินงานบำรุงรักษา โดยจัดว่าทำไมรหัสผ่านผู้ดูแลท้องถิ่นร่วมกันจึงอันตราย จากนั้นอธิบายกลไกของ Windows LAPS (Local Administrator Password Solution) ที่ฝังใน OS การใช้แยกตามสภาพแวดล้อม ขั้นตอนการนำเข้าใช้ และกับดักในการดำเนินงาน ตามแหล่งปฐมภูมิ ณ สิงหาคม 2026 เป็นภาคต่อของซีรีส์ความปลอดภัยสำหรับฝ่ายสารสนเทศที่ไล่ BitLocker การเลิก WSUS ไฟร์วอลล์ และที่เก็บใบรับรองมาแล้ว

1. สรุปก่อนเลย

  • รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีเป็นแหล่งเพาะการเคลื่อนที่ด้านข้าง (lateral movement) ที่ขยายการบุกรุกหนึ่งเครื่องไปทั้งกอง ถ้ารหัสผ่านเดียวกัน NT hash ของ NTLM ก็เดียวกัน จึงถูกดึงแฮชจากเครื่องเดียวแล้วเข้าเครื่องที่เหลือด้วย Pass-the-Hash ได้1
  • Windows LAPS คือฟังก์ชันมาตรฐานของ OS ที่สุ่มรหัสผ่านผู้ดูแลท้องถิ่นทีละเครื่องแล้วหมุนเวียนอัตโนมัติ Microsoft ยกการรับมือ Pass-the-Hash และการเคลื่อนที่ด้านข้างเป็นข้อได้เปรียบอันดับแรก1
  • ฝังอยู่ใน Windows 10/11 หลังอัปเดตวันที่ 11 เมษายน 2023 และ 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 ต้องเตรียมสามอย่างล่วงหน้า การขยายสคีมา (Update-LapsADSchema) สิทธิ์เขียนของคอมพิวเตอร์เอง (Set-LapsADComputerSelfPermission) และการออกแบบสิทธิ์การดู (Set-LapsADReadPasswordPermission)3
  • ตรวจรหัสผ่านด้วย Get-LapsADPassword / Get-LapsAADPassword สะท้อนทันทีด้วย Invoke-LapsPolicyProcessing หมุนเวียนทันทีฝั่งเครื่องด้วย Reset-LapsPassword4
  • รหัสผ่านที่ใช้แล้วถูกทำให้ใช้ครั้งเดียวโดยอัตโนมัติ หลังยืนยันตัวตนด้วยบัญชีเป้าหมาย ค่าเริ่มต้นรีเซ็ต + ลงชื่อออกใน 24 ชั่วโมง (PostAuthenticationActions)2

แผนที่ความรู้ของบทความนี้

รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซี ทำให้ NT hash เหมือนกันทุกเครื่อง แฮชที่ดึงจากเครื่องหนึ่งจึงเป็นลูกกุญแจไปเครื่องอื่น และนำสู่การเคลื่อนที่ด้านข้างด้วย Pass-the-Hash Windows LAPS เป็นฟังก์ชันมาตรฐานของ OS ที่ตัดเส้นทางนี้ด้วยการสุ่มรหัสผ่านทีละเครื่องแล้วหมุนเวียนอัตโนมัติ ที่เก็บคือ Active Directory หรือ Microsoft Entra ID อย่างใดอย่างหนึ่ง และเครื่องเวิร์กกรุ๊ปที่ไม่เข้าร่วมทั้งสองใช้ไม่ได้ ค่าเริ่มต้น BackupDirectory ปิด จึงไม่เกิดอะไรจนกว่าจะระบุที่เก็บชัดด้วย GPO หรือ LAPS CSP ของ Intune การเก็บใน AD สมมติการขยายสคีมา แอตทริบิวต์รหัสผ่านที่ถูกเพิ่มเป็นแอตทริบิวต์ลับ แต่หลักการที่มีสิทธิ์ขยายบน OU เป้าหมายยังอ่านได้ จึงต้องมีสองชั้นที่จำกัดผู้ถอดรหัสด้วยการเก็บแบบเข้ารหัส รหัสผ่านที่ได้ถูกรีเซ็ตอัตโนมัติ 24 ชั่วโมงหลังยืนยันตัวตนด้วย PostAuthenticationActions แต่จุดตั้งต้นคือการยืนยันตัวตน ไม่ใช่การอ้างอิง

แผนที่ความรู้ Windows LAPS กับรหัสผ่านผู้ดูแลท้องถิ่นร่วมกันแผนภาพที่แสดงโครงที่รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีนำสู่การเคลื่อนที่ด้านข้างด้วย Pass-the-Hash และ Windows LAPS ตัดเส้นทางนั้นอย่างไร รวมที่เก็บ การเตรียมล่วงหน้า สิทธิ์ดู กลไกใช้ครั้งเดียว และความสัมพันธ์กับ LAPS รุ่นเก่าอาจก่อให้เกิดใช้อาจก่อให้เกิดป้องกันบรรเทาทำอัตโนมัติใช้อาจก่อให้เกิดอาจก่อให้เกิดเป็นรุ่นถัดจากอาจก่อให้เกิดใช้ร่วมไม่ได้ใช้ร่วมไม่ได้ถูกเก็บในถูกเก็บในใช้ร่วมไม่ได้ต้องมีกำหนดค่าด้วยกำหนดค่าด้วยใช้ต้องมีใช้ป้องกันตรวจยืนยันด้วยบรรเทาต้องมีใช้ใช้ต้องมีกำหนดค่าด้วยตรวจยืนยันด้วยWindows LAPSรหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีPass-the-HashNT hashการเคลื่อนที่ด้านข้าง (lateral movement)บัญชีผู้ดูแลท้องถิ่นบัญชี Built-in Administratorสถานะที่บัญชียังปิดค้างLAPS รุ่นเก่า (legacy Microsoft LAPS)การจัดการบัญชีเดียวกันซ้ำสองฝ่ายโหมดจำลอง LAPS รุ่นเก่าการเก็บรหัสผ่าน LAPS แบบเข้ารหัสActive Directory (AD DS)Microsoft Entra IDการกำหนดค่าเวิร์กกรุ๊ปการตั้ง BackupDirectoryGroup PolicyLAPS CSPMicrosoft Intuneการเก็บรหัสผ่าน LAPS ใน Active Directoryการขยายสคีมา AD ของ Windows LAPS (msLAPS-*)แอตทริบิวต์ลับ (confidential)สิทธิ์ขยาย (All Extended Rights)การป้องกันการอ่านด้วยแอตทริบิวต์ลับโมดูล LAPS PowerShellระดับการทำงานของโดเมน (DFL)PostAuthenticationActionsบันทึก LAPS/Operational

ในแผนภาพ เส้นทึบหมายถึงความสัมพันธ์ที่ถือเสมอ และเส้นประหมายถึงความสัมพันธ์ที่มีเงื่อนไข (เงื่อนไขอยู่ในการอธิบายของแต่ละความสัมพันธ์ในหน้าละเอียด) รายการความสัมพันธ์ทั้งหมด (รวม 31 รายการ พร้อมหลักฐานและระดับความเชื่อมั่น) และนิยามของแนวคิดหลักรวบรวมไว้ที่ หน้าละเอียดของแผนที่ความรู้ (เป็นภาษาญี่ปุ่น) ข้อมูล: JSON-LD / Turtle

2. ทำไมรหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีจึงอันตราย

ก่อนอื่นจับโครงภัยคุกคามให้แม่น หากรหัสผ่านของบัญชีผู้ดูแลท้องถิ่น (Administrator ในตัว หรือบัญชีซ่อมที่สร้างตอนจัดเตรียม) ร่วมกันทุกเครื่อง จะเกิดอะไร

Windows ไม่เก็บรหัสผ่านของบัญชีท้องถิ่นตามตัวอักษร แต่เก็บเป็น NT hash ที่คำนวณจากรหัสผ่าน และการยืนยันตัวตน NTLM ใช้แฮชนั้นเองเป็นวัสดุรับรอง กล่าวคือ ถ้ารหัสผ่านเดียวกัน แฮชก็เดียวกันทุกเครื่อง เมื่อผู้โจมตีได้สิทธิ์ผู้ดูแลบนเครื่องหนึ่งด้วยมัลแวร์หรือการโจมตีแบบเจาะจง จะดึงแฮชจากหน่วยความจำหรือฐานข้อมูลท้องถิ่น (SAM) ของเครื่องนั้นได้ จากนั้นคือของจริง แฮชที่ได้ใช้ยืนยันตัวตนได้โดยไม่ต้องคืนเป็นรหัสผ่านตัวอักษร นี่คือ การโจมตี Pass-the-Hash ในสภาพแวดล้อมรหัสผ่านร่วม แฮชจากเครื่องเดียวกลายเป็น «ลูกกุญแจ» ไปเครื่องที่เหลือ และการบุกรุกลามไปด้านข้างรวดเดียว กลไก NTLM และเหตุผลที่แฮชอย่างเดียวผ่านการยืนยันตัวตนได้ อธิบายละเอียดใน «อธิบาย NTLM และ Kerberos ด้วยแผนภาพ»

รหัสผ่านร่วมนำสู่การเคลื่อนที่ด้านข้างด้วย Pass-the-Hashถ้า NT hash เดียวกันทุกเครื่อง การบุกรุกเครื่องหนึ่งลามไปทุกเครื่อง และถ้าแยกรหัสผ่านทีละเครื่องด้วย LAPS จะตัดเส้นทางนี้ได้หลังนำ LAPS เข้าใช้รหัสผ่านต่างกันทีละเครื่อง จึงได้แฮชของ PC-01บุกรุก PC-01เครื่องอื่นยืนยันตัวตนด้วยแฮชนี้ไม่ได้ (ตัดการเคลื่อนที่ด้านข้างผ่านผู้ดูแลท้องถิ่น)สภาพแวดล้อมรหัสผ่านร่วมPass-the-HashPass-the-HashPass-the-Hashได้ NT hash ของผู้ดูแลบุกรุก PC-01(มัลแวร์・การโจมตีแบบเจาะจง)PC-02PC-03…เคลื่อนที่ด้านข้างไปทุกเครื่อง

ภาพ 1: รหัสผ่านร่วมทำให้แฮชหนึ่งเส้นเป็นลูกกุญแจไปทุกเครื่อง และ LAPS ตัดเส้นทางนั้นด้วยรหัสผ่านที่ต่างกันทีละเครื่อง.

ทิศทางรับมือชัด คือ ทำให้รหัสผ่านผู้ดูแลท้องถิ่นต่างกันทีละเครื่อง และเปลี่ยนเป็นระยะ แล้วแฮชที่รั่วจากเครื่องหนึ่งใช้กับเครื่องอื่นไม่ได้ และตัด เส้นทางการเคลื่อนที่ด้านข้างแบบใช้บัญชีผู้ดูแลท้องถิ่นซ้ำ ได้ (พึงจำว่าเส้นทางอื่น เช่น การขโมยข้อมูลรับรองโดเมนบนพีซีที่ถูกบุกรุก ยังไม่ถูกปิด) แต่ทำด้วยมือไม่เป็นจริง การสร้างรหัสผ่านหลายสิบตัวแยกกัน ทำบัญชี และอัปเดตวน ── ต้นทุนดำเนินงานสูงนี่เองที่ทำให้ทางลัดรหัสผ่านร่วมยังอยู่ «การทำให้อัตโนมัติซึ่งการแยกและการเปลี่ยนเป็นระยะ» คู่กับการเก็บลงไดเรกทอรีอย่างปลอดภัย ที่ OS รับเอง คือ Windows LAPS Microsoft เองยก «การป้องกันจากการโจมตี Pass-the-Hash และการโจมตีแบบเคลื่อนที่ด้านข้าง (lateral-traversal)» เป็นข้อได้เปรียบอันดับแรกของ Windows LAPS1

อนึ่ง พื้นฐานการจัดการสิทธิพิเศษอย่างไม่ทำงานประจำด้วยบัญชีผู้ดูแล และจำกัดการใช้บัญชีซ่อม ดูเพิ่มใน «เมื่อใดที่จริง ๆ แล้วต้องใช้สิทธิ์ผู้ดูแลบน Windows»

3. Windows LAPS คืออะไร — ความต่างจาก LAPS รุ่นเก่า

ชื่อ LAPS มีประวัติ และในงานปฏิบัติถ้าไม่แยก «กำลังพูดถึง LAPS ตัวไหน» บทสนทนาจะไม่เข้ากัน

LAPS รุ่นเก่า (legacy Microsoft LAPS) คือเครื่องมือติดตั้งเพิ่มที่ Microsoft เปิดในปี 20161 แจกแพ็กเกจ MSI ไปทุกเครื่องเพื่อใส่ส่วนขยาย Group Policy (CSE) แล้วเก็บรหัสผ่านเป็นข้อความธรรมดาในแอตทริบิวต์ ms-Mcs-AdmPwd ของ Active Directory และเป็นมาตรฐานโดยพฤตินัยมานาน

Windows LAPS คือการอิมพลีเมนต์อีกชุดที่ฝังใน OS เป็นรุ่นถัดไป รวมใน Windows 10, Windows 11 21H2/22H2 และ Windows Server 2019/2022 หลังอัปเดตวันที่ 11 เมษายน 2023 และมีตั้งแต่ต้นบน Windows 11 23H2 เป็นต้นไปกับ Windows Server 2025 เป็นต้นไป1 กล่าวคือ ถ้าสภาพแวดล้อมอัปเดตตามปกติ พีซีในองค์กรมี Windows LAPS อยู่แล้ว เหลือแค่ว่านโยบาย

มุม LAPS รุ่นเก่า (legacy) Windows LAPS
รูปแบบการให้ แจก MSI ไปติดตั้งทุกเครื่อง ฝังใน OS (หลังอัปเดตเมษายน 2023) ไม่ต้องติดตั้งเพิ่ม1
ที่เก็บรหัสผ่าน Active Directory เท่านั้น Active Directory หรือ Microsoft Entra ID1
การเข้ารหัสใน AD ไม่รองรับ (ข้อความธรรมดา + ป้องกันด้วย ACL) รองรับ (DFL 2016 ขึ้นไปเข้ารหัสและเก็บประวัติได้)3
การจัดการรหัสผ่าน DSRM ไม่รองรับ จัดการบัญชี DSRM ของตัวควบคุมโดเมนได้1
รีเซ็ตอัตโนมัติหลังยืนยันตัวตน ไม่มี รีเซ็ตอัตโนมัติ + ลงชื่อออก ฯลฯ หลังยืนยันตัวตนด้วย PostAuthenticationActions2
PowerShell โมดูล AdmPwd.PS โมดูล LAPS (Get-LapsADPassword ฯลฯ)4
ต่อไป ถูกเลิกแนะนำตั้งแต่ Windows 11 23H2 เป็นต้นไป บน OS ใหม่การติดตั้ง MSI เองถูกบล็อก1 มาตรฐานปัจจุบัน

สำคัญคือ Windows LAPS ไม่ใช่รุ่นแก้ของ LAPS เก่า แต่เป็น การอิมพลีเมนต์คนละชุดโดยสมบูรณ์ และแอตทริบิวต์สคีมาของ AD ก็คนละชุด (msLAPS-*)4 เพื่อช่วยโยกย้ายจาก LAPS เก่า มี «โหมดจำลอง» ที่ Windows LAPS ตีความการตั้งค่า GPO ของ LAPS เก่าแล้วทำงาน แต่มีข้อจำกัดมาก (หมวด 6) และไม่มีเหตุผลที่จะใช้ตอนนำเข้าใช้ใหม่

4. รหัสผ่านถูกเก็บที่ไหน — ตารางตัดสินตามสภาพแวดล้อม

Windows LAPS «สำรอง» รหัสผ่านที่สร้างไปยังไดเรกทอรี ที่เก็บถูกกำหนดด้วยสถานะการเข้าร่วมของเครื่อง และ เก็บทั้ง AD และ Entra ID พร้อมกันไม่ได้1

สภาพแวดล้อม ที่เก็บ การแจกนโยบาย วิธีตรวจรหัสผ่าน การตัดสิน
เข้าร่วมโดเมน AD อย่างเดียว Active Directory (แอตทริบิวต์ msLAPS-* ของออบเจ็กต์คอมพิวเตอร์) Group Policy (LAPS.admx) Get-LapsADPassword หน้าคุณสมบัติใน Active Directory Users and Computers3 ทางหลักของธุรกิจขนาดกลางและเล็กที่ศูนย์กลางอยู่บนองค์กร ต้องขยายสคีมาและตั้งสิทธิ์ล่วงหน้า
เข้าร่วม Entra อย่างเดียว (+Intune) Microsoft Entra ID แจกจาก Intune ด้วย LAPS CSP ศูนย์จัดการ Entra/Intune, Get-LapsAADPassword (Microsoft Graph)5 ถ้าโยกไปจัดการบนคลาวด์แล้วใช้ทางนี้ ต้องเปิดฟังก์ชันฝั่งเทนันต์
เข้าร่วมไฮบริด เลือกอย่างใดอย่างหนึ่ง ระหว่าง AD หรือ Entra ID1 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 ใช้การเข้ารหัสไม่ได้ จึงอย่าพึ่งการสลับเป็นข้อความธรรมดาอัตโนมัติ แต่ ปิดการเข้ารหัสชัดในนโยบาย แล้วเก็บแบบข้อความธรรมดา + ป้องกันด้วย ACL3

เมื่อเก็บใน Entra ID โครงมาตรฐานคือเปิด «การจัดการรหัสผ่านผู้ดูแลท้องถิ่น» ฝั่งเทนันต์ แล้วแจกนโยบายจาก Intune ผ่าน LAPS CSP ด้านใบอนุญาต ตัวฟังก์ชัน Windows LAPS ฟรี การเก็บใน AD ไม่มีข้อกำหนดเพิ่ม และการเก็บใน Entra ID ใช้ได้ด้วย Microsoft Entra ID Free ขึ้นไป1

ที่เครื่องเวิร์กกรุ๊ปไม่มีทางแทนในตัว เพราะไม่มีไดเรกทอรีที่เป็นที่เก็บ ในทางปฏิบัติคือตั้งรหัสผ่านต่างกันทีละเครื่องตอนจัดเตรียม แล้วทำบัญชีด้วยตัวจัดการรหัสผ่าน ฯลฯ หากจัดเตรียมด้วยสคริปต์อยู่แล้ว การฝังการสร้างรหัสผ่านต่อเครื่องในนั้นชัวร์ที่สุด (ดู «การจัดเตรียมเครื่องอัตโนมัติด้วย winget + PowerShell»)

5. งานปฏิบัติขั้นตอนการนำเข้าใช้ — ยึดโครง AD+GPO

ที่นี่ไล่ขั้นตอนจริงโดยยึดโครงโดเมน AD + GPO ซึ่งมีจำนวนมาก ความต่างของโครง Entra+Intune สรุปท้ายหมวด

5.1. การเตรียมล่วงหน้า (งานครั้งเดียว)

เมื่อเก็บใน AD ให้เตรียมฝั่งฟอเรสต์ให้เสร็จก่อนแจกนโยบาย3

# 1. ขยายสคีมา (ครั้งเดียวต่อฟอเรสต์ รันด้วยสิทธิ์ Schema Admins)
Update-LapsADSchema

# 2. ให้คอมพิวเตอร์ใต้ OU เป้าหมายมีสิทธิ์อัปเดตแอตทริบิวต์รหัสผ่านของตนเอง
Set-LapsADComputerSelfPermission -Identity "OU=PCPhainai,DC=example,DC=co,DC=jp"

# 3. ให้กลุ่มที่ดูรหัสผ่านได้ (Domain Admins ดูได้ตามค่าเริ่มต้น)
Set-LapsADReadPasswordPermission -Identity "OU=PCPhainai,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 4. ให้กลุ่มที่จัดการวันหมดอายุได้ (สั่งหมดอายุทันที = สั่งรีเซ็ต)
#    (จำเป็นต่อ Set-LapsADPasswordExpirationTime ใน 5.4 Domain Admins ทำได้ตามค่าเริ่มต้น)
Set-LapsADResetPasswordPermission -Identity "OU=PCPhainai,DC=example,DC=co,DC=jp" `
    -AllowedPrincipals @("EXAMPLE\HelpdeskAdmins")

# 5. ตรวจว่าไม่มีผู้ถือสิทธิ์ดูที่ไม่คาดคิด (ละเอียดในหมวด 6)
Find-LapsADExtendedRights -Identity "OU=PCPhainai,DC=example,DC=co,DC=jp"

หากใช้การเก็บแบบเข้ารหัส (DFL 2016 ขึ้นไป เปิดตามค่าเริ่มต้น) ต้องตั้งอีกอย่าง สิทธิ์การดูกับสิทธิ์ถอดรหัสคนละเรื่อง และผู้ถอดรหัสได้ตามค่าเริ่มต้นมีแค่ Domain Admins3 ถ้าอยากให้กลุ่มฝ่ายช่วยเหลือได้รหัสผ่านจริง ให้ระบุกลุ่มเดียวกัน (EXAMPLE\HelpdeskAdmins) ใน ADPasswordEncryptionPrincipal ฝั่งนโยบายด้วย2 ถ้าลืม จะได้สถานะ «อ่านแอตทริบิวต์ได้แต่ถอดรหัสไม่ได้» แม้ให้สิทธิ์ดูตามขั้นตอนข้างบนแล้ว

Update-LapsADSchema คนละตัวกับ Update-AdmPwdADSchema ของ LAPS เก่า และที่ถูกเพิ่มคือแอตทริบิวต์ msLAPS-* แม้มี LAPS เก่าอยู่แล้ว ก็ต้องขยายสคีมาสำหรับ Windows LAPS อีกครั้ง4 หากใช้ Central Store ของ GPO แม่แบบ Windows LAPS จะไม่ถูกคัดลอกไป Central Store ด้วย Windows Update จึงคัดลอกด้วยมือ2 ตอนนั้นอย่าคัดลอกแค่ %windir%\PolicyDefinitions\LAPS.admx แต่คัดลอกทรัพยากรภาษา LAPS.adml (ถ้า UI ไทยอยู่ในโฟลเดอร์ย่อย th-TH) ไปโฟลเดอร์ภาษาที่คู่กันด้วย หากไม่มี ADML การแสดงนโยบาย LAPS ใน GPMC จะเป็นข้อผิดพลาดทรัพยากร

5.2. การตั้งนโยบาย

ที่ตั้ง GPO คือ «Computer Configuration > Policies > Administrative Templates > System > LAPS»2 การตั้งขั้นต่ำที่จำเป็นคือการระบุที่เก็บ และ ถ้าไม่ตั้ง BackupDirectory เป็น «Active Directory» (ค่า 2) Windows LAPS จะไม่ทำอะไร (ค่าเริ่มต้นคือ «ปิด»)2 การตั้งหลักและค่าเริ่มต้นมีดังนี้

การตั้งค่า ค่าเริ่มต้น มุมปฏิบัติ
BackupDirectory ปิด (0) จำเป็น AD=2, Entra ID=12
AdministratorAccountName ไม่ระบุ (จัดการ Built-in 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

จุดที่มักมองข้ามคือ บัญชีเป้าหมายเปิดหรือปิด Built-in Administrator ถูกปิดตั้งแต่ตอนติดตั้ง Windows7 Windows LAPS จัดการรหัสผ่านแม้บัญชียังปิด แต่ ไม่ได้เปิดบัญชีให้2 ดังนั้นโครงค่าเริ่มต้นอาจเป็น «รหัสผ่านถูกเก็บในไดเรกทอรี แต่ไม่มีใครลงชื่อเข้าใช้ด้วยบัญชีนั้นได้» หากจะใช้เป็นทางกู้ ให้เลือกอย่างชัดเจนว่าจะเปิด Built-in Administrator แล้วดำเนินงาน หรือให้บัญชีซ่อมที่เปิดแล้วเป็นเป้าหมาย หรือบน Windows 11 24H2 / Server 2025 เป็นต้นไป จัดการสถานะเปิดด้วยการจัดการบัญชีอัตโนมัติ (ตระกูล AutomaticAccountManagement)2

5.3. ตรวจการทำงานและการดึงรหัสผ่าน

Windows LAPS ประมวลผลนโยบายที่เปิดทุกชั่วโมง หากอยากตรวจโดยไม่รอ ให้ประมวลผลทันทีบนเครื่องเป้าหมาย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 มีแท็บ LAPS ถูกเพิ่มในคุณสมบัติคอมพิวเตอร์ของ «Active Directory Users and Computers» และอ้างอิงจากที่นั่นได้1

5.4. การหมุนเวียนทันที

เมื่อใช้รหัสผ่านจบงานซ่อม หรือมีพิรุธการบุกรุก ให้หมุนทันทีโดยไม่รอรอบประจำ3

# จากเครื่องจัดการ: ตั้งวันหมดอายุเป็น «ตอนนี้» ให้รอบถัดไปหมุนเวียน
Set-LapsADPasswordExpirationTime -Identity PC-0123
# ถ้าเตะการประมวลผลทันทีบนเครื่องเป้าหมาย รหัสผ่านใหม่จะเข้าที่ทันที
Invoke-LapsPolicyProcessing

# เมื่อหมุนเวียนทันทีบนเครื่องเป้าหมายโดยตรง
Reset-LapsPassword

5.5. ความต่างเมื่อเป็นโครง Entra+Intune

การเก็บใน Entra ID ไม่ต้องขยายสคีมาหรือตั้ง ACL แบบ AD3 แทนที่นั้น ต้องเปิดการจัดการรหัสผ่านผู้ดูแลท้องถิ่นใน [การตั้งค่าอุปกรณ์] ของเทนันต์ Microsoft Entra ถ้าลืม เครื่องจะบันทึกรหัสผ่านไม่ได้5 นโยบายถูกแจกจาก Intune ผ่าน LAPS CSP และดึงรหัสผ่านจากหน้าจอศูนย์จัดการ Entra/Intune หรือ Get-LapsAADPassword ผ่าน Microsoft Graph5

# ดึงรหัสผ่านที่เก็บใน Entra ID ผ่าน Graph (ตัวอย่างการเข้าถึงแบบมอบหมาย)
# ขอสโคปที่จำเป็นตอนเชื่อมอย่างชัดเจน
Connect-MgGraph -Scopes "Device.Read.All","DeviceLocalCredential.Read.All"
Get-LapsAADPassword -DeviceIds PC-0123 -IncludePasswords -AsPlainText

รหัสเหตุการณ์บันทึกสำเร็จคือ 10018 สำหรับ AD และ 10029 สำหรับ Entra ID8

6. กับดักในการดำเนินงาน

นำเข้าใช้แล้วยังไม่จบ จุดที่สนามจริงเหยียบง่ายมีดังนี้ตามลำดับ

6.1. สิทธิ์ดูกว้างกว่าที่คิด

แอตทริบิวต์รหัสผ่านเป็นแอตทริบิวต์ลับ (confidential) จึงไม่เห็นด้วยการอ่านปกติ แต่ หลักการที่มีสิทธิ์ขยาย (All Extended Rights) บน OU เป้าหมายยังอ่านได้ ในสภาพแวดล้อมที่เคยมอบสิทธิ์กว้างบน OU การดำเนินงานที่ผ่านมา มักมีกลุ่มที่ไม่คาดคิดอ่านรหัสผ่านได้ ตอนนำเข้าใช้ให้กวาดผู้ถือสิทธิ์ขยายด้วย Find-LapsADExtendedRights หากมีใครนอก SYSTEM และ Domain Admins ให้ทบทวนเนื้อหาการมอบ3

นอกจากนี้ เมื่อเปิดการเก็บแบบเข้ารหัส (ADPasswordEncryptionEnabled) จะแยกสิทธิ์ดูกับสิทธิ์ถอดรหัสได้ แค่ให้สิทธิ์ดูยังถอดรหัสผ่านที่เข้ารหัสไม่ได้ ผู้ถอดรหัสได้ตามค่าเริ่มต้นมีแค่ Domain Admins และการเปลี่ยนต้องระบุกลุ่มถอดรหัสได้ใน ADPasswordEncryptionPrincipal3 การจำกัดอย่าง «ฝ่ายช่วยเหลือถอดรหัสได้เฉพาะรหัสผ่านของ 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 หาก CSE (ส่วนขยาย Group Policy) ของ LAPS เก่ายังติดตั้งอยู่ CSE เก่ายังประมวลผล GPO เก่าอย่างอิสระต่อไป หากเปิดนโยบาย Windows LAPS ทั้งที่ยังอยู่ในขอบเขตการใช้ GPO เก่า จะกลายเป็นสถานะจัดการซ้ำที่ทั้งคู่หมุนเวียนบัญชีเดียวกัน
  • «โหมดจำลอง» ที่ให้ Windows LAPS ประมวลผลการตั้งค่า GPO ของ LAPS เก่า ทำงานเฉพาะบนเครื่องที่ไม่ได้ติดตั้ง CSE ของ LAPS เก่า ใช้ข้อสมมติของสภาพแวดล้อม LAPS เก่า (สคีมาเก่า ACL เก่า) ตามเดิม แต่ใช้ฟีเจอร์ใหม่อย่างการเข้ารหัสหรือการเก็บใน Entra ไม่ได้9
  • แค่การอัปเดต OS เครื่องที่ยังมี GPO ของ LAPS เก่าอาจเริ่มทำงานในโหมดจำลองโดยไม่ตั้งใจ หากอยากเลี่ยงการเปลี่ยนรหัสผ่านที่ไม่คาดคิดทันทีหลังจัดเตรียม ให้ตั้ง BackupDirectory=0 ในคีย์โครงท้องถิ่นเพื่อหยุดการจำลอง9

การโยกย้ายเดินตามลำดับ «ถอด OU เป้าหมายออกจากการใช้นโยบาย GPO ของ LAPS เก่า (หรือถอน CSE เก่า) → ใช้นโยบาย Windows LAPS → เก็บ GPO เก่าและ CSE เก่าที่เหลือ» คือ ถอดการจัดการเก่าออกก่อนแล้วค่อยเปิดการจัดการใหม่ และทำให้เสมอว่าทีละเครื่องอยู่ใต้การจัดการฝ่ายใดฝ่ายหนึ่งไม่กำกวม หากกลับลำดับ (ใช้นโยบาย Windows LAPS ก่อน) เครื่องที่ยังมี CSE เก่าจะเกิดการจัดการซ้ำข้างบน

6.4. การตรวจสอบ — เหลือ «ใครดู เมื่อใด»

เมื่อเก็บรหัสผ่านผู้ดูแลท้องถิ่นรวมศูนย์ ประวัติการดูเป็นเป้าการตรวจสอบ การทำงานฝั่งเครื่องถูกบันทึกทั้งหมดในช่องบันทึกเหตุการณ์เฉพาะ (ใน Event Viewer คือ «Application and Services Logs > Microsoft > Windows > LAPS > Operational») ตรวจได้ตั้งแต่เริ่มประมวลผล 10003 / สำเร็จ 10004 / ล้มเหลว 10005 บันทึกสำเร็จ 10018 (AD) / 10029 (Entra) เนื้อหานโยบายที่กำลังใช้ 10021–10023 เป็นต้น8 ฝั่ง AD ตั้งการตรวจสอบบน OU เป้าหมายด้วย Set-LapsADAuditing แล้วบันทึกการเข้าถึงแอตทริบิวต์รหัสผ่านในบันทึกความปลอดภัยของตัวควบคุมโดเมนได้4 เมื่อเก็บใน Entra ID ติดตามด้วยบันทึกการตรวจสอบและรายงานฝั่ง Entra1

7. สรุป

  • รหัสผ่านผู้ดูแลท้องถิ่นร่วมกันทุกพีซีสร้างโครงที่การบุกรุกหนึ่งเครื่องลามไปทั้งกองด้วย Pass-the-Hash การแยกทีละเครื่องและการหมุนเวียนอัตโนมัติคือทางรับมือ และผู้รับหน้าที่นั้นคือ Windows LAPS
  • Windows LAPS ฝังแล้วใน Windows 10/11 หลังอัปเดตเมษายน 2023 และ Windows Server 2019/2022 เป็นต้นไป ไม่ต้องติดตั้งเพิ่ม LAPS รุ่นเก่า (แจกเป็น MSI) ถูกเลิกแนะนำ ของใหม่เลือก Windows LAPS อย่างเดียว
  • ที่เก็บคือ AD หรือ Entra ID อย่างใดอย่างหนึ่ง ตามสถานะการเข้าร่วมของเครื่อง เครื่องเวิร์กกรุ๊ปใช้ไม่ได้ จึงต้องจัดการแยกด้วยมือหรือทบทวนรูปแบบการเข้าร่วม
  • ค่าเริ่มต้นปิด หากเป็นโครง AD ให้เตรียมสามอย่าง คือการขยายสคีมา สิทธิ์อัปเดตตนเอง และสิทธิ์ดู แล้วตั้ง BackupDirectory ใน GPO จึงเริ่มทำงาน
  • งานประจำยึด PowerShell การดึงคือ Get-LapsADPassword / Get-LapsAADPassword การสะท้อนทันทีคือ Invoke-LapsPolicyProcessing การหมุนเวียนทันทีคือ Reset-LapsPassword
  • กับดักคือการดูที่ไม่คาดคิดจากสิทธิ์ขยาย ที่ PostAuthenticationActions ไม่ทำงานถ้าเพียงอ้างอิง การจัดการซ้ำกับ LAPS เก่า และการยังไม่จัดระบบตรวจสอบ ตอนนำเข้าใช้ให้ตรึงการตรวจสิทธิ์ด้วย Find-LapsADExtendedRights และขั้นตอนทำให้หมดอายุหลังอ้างอิง

บทความที่เกี่ยวข้อง

ด้านให้คำปรึกษาที่เกี่ยวข้อง

KomuraSoft LLC รับการสร้างสคริปต์อัตโนมัติสำหรับการจัดเตรียมเครื่อง การจัดระบบการตั้งค่าความปลอดภัยของเครื่องรวมการนำ Windows LAPS เข้าใช้ และการวางแผนโยกย้ายจากการดำเนินงานรหัสผ่านร่วมที่มีอยู่ เริ่มจากขั้น «มีสมุดขั้นตอนจัดเตรียมแต่ยังผูกคน» หรือ «อยากใส่ LAPS แต่ไม่มั่นใจการตั้งสิทธิ์ของ AD» ก็ได้

ลิงก์อ้างอิง

  1. Microsoft Learn, What is Windows LAPS?. ว่าด้วย Windows LAPS ที่เป็นฟังก์ชันของ Windows ซึ่งจัดการและสำรองรหัสผ่านบัญชีผู้ดูแลท้องถิ่นของอุปกรณ์ที่เข้าร่วม Entra หรือ AD โดยอัตโนมัติ ว่าด้วย OS ที่รองรับ (Windows 10, Windows 11 21H2/22H2, Windows Server 2019/2022 หลังอัปเดตวันที่ 11 เมษายน 2023 และ Windows 11 23H2 เป็นต้นไปกับ Windows Server 2025 เป็นต้นไปที่มีมาตั้งแต่ต้น) ว่าด้วยข้อได้เปรียบอันดับแรกที่เป็นการป้องกันจากการโจมตี Pass-the-Hash และการโจมตีแบบเคลื่อนที่ด้านข้าง ว่าด้วยข้อจำกัดที่เก็บตามสถานะการเข้าร่วม (เข้าร่วม Entra อย่างเดียว → Entra ID, เข้าร่วม AD อย่างเดียว → AD, ไฮบริด → เลือกอย่างใดอย่างหนึ่ง เก็บทั้งสองไม่ได้) ว่าด้วย LAPS เก่าที่ถูกเลิกแนะนำตั้งแต่ Windows 11 23H2 เป็นต้นไปและการติดตั้ง MSI ที่ถูกบล็อกบน OS ใหม่ ว่าด้วย LAPS เก่าที่เป็นสินค้าอีกชิ้นที่เปิดในปี 2016 และ Windows LAPS เป็นการอิมพลีเมนต์คนละชุดโดยสมบูรณ์ ว่าด้วยการจัดการผ่านหน้าคุณสมบัติใน Active Directory Users and Computers ช่องบันทึกเหตุการณ์เฉพาะ และโมดูล 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 (Computer Configuration > Policies > Administrative Templates > System > LAPS แม่แบบอยู่ที่ %windir%\PolicyDefinitions\LAPS.admx) และ LAPS CSP ว่าด้วยความจำเป็นต้องคัดลอก LAPS.admx ไป Central Store ของ 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 ที่จำเป็น นโยบายที่ถูกประมวลผลทุกชั่วโมงและตรวจบันทึกสำเร็จลง AD ได้ด้วยเหตุการณ์ 10018 การประมวลผลทันทีด้วย 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. ว่าด้วยบทบาทของแต่ละ cmdlet ในโมดูล 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) ตารางเทียบกับโมดูล AdmPwd.PS ของ LAPS เก่า และว่าด้วย cmdlet ของ Windows LAPS ที่ทำงานกับการขยายสคีมาคนละชุดกับ 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. ว่าด้วยสเปกของแอตทริบิวต์ msLAPS-* ที่ Update-LapsADSchema เพิ่มให้ออบเจ็กต์คอมพิวเตอร์ (msLAPS-Password=รหัสผ่านข้อความธรรมดาและข้อมูลประกอบ, msLAPS-PasswordExpirationTime=วันหมดอายุ, msLAPS-EncryptedPassword=รหัสผ่านที่เข้ารหัส ฯลฯ) และว่าด้วย SearchFlags ของแอตทริบิวต์ตระกูลรหัสผ่านที่เป็น 904 (รวม fCONFIDENTIAL=แอตทริบิวต์ลับ) ในขณะที่ SearchFlags ของ msLAPS-PasswordExpirationTime เป็น 0 และไม่ถูกทำเครื่องหมายลับ  2

  7. Microsoft Learn, Local accounts. ว่าด้วยบัญชี Built-in Administrator ที่ถูกปิดตอนติดตั้ง Windows และแทนที่ด้วยบัญชีท้องถิ่นอื่นที่อยู่ในกลุ่ม Administrators ว่าด้วยบัญชี Administrator ที่ถูกปิดซึ่งใช้ไม่ได้ยกเว้นกรณีพิเศษในเซฟโหมด และว่าด้วยการนำรหัสผ่านบัญชีผู้ดูแลท้องถิ่นกลับมาใช้ซ้ำที่เป็นความเสี่ยงการเคลื่อนที่ด้านข้างด้วย Pass-the-Hash โดย LAPS ถูกยกเป็นทางแรกของการสุ่ม 

  8. Microsoft Learn, Use Windows LAPS event logs. ว่าด้วยการทำงานทั้งหมดที่ถูกบันทึกในช่องบันทึกเหตุการณ์เฉพาะ (ใน Event Viewer คือ Application and Services 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 ตีความการตั้งค่า GPO ของ LAPS เก่าแล้วทำงาน (เก็บเป็นข้อความธรรมดาเท่านั้น การขยายสคีมาเก่า นิยาม GPO เก่า และการจัดการ ACL เก่าต้องมีการติดตั้ง LAPS เก่า หากมีนโยบาย Windows LAPS จะถูกใช้ก่อนเสมอและนโยบายเก่าถูกเพิกเฉย ไม่ทำงานบนเครื่องที่ติดตั้ง CSE ของ LAPS เก่า) ว่าด้วยโครงที่บัญชีเดียวกันถูกจัดการด้วยสองกลไกที่เป็นความเสี่ยงด้านความปลอดภัยและไม่ถูกรองรับ และว่าด้วยการตั้ง BackupDirectory=0 ในคีย์โครงท้องถิ่นเพื่อยับยั้งโหมดจำลองได้  2 3 4

บทความล่าสุดที่มีแท็กเดียวกัน เพื่อเจาะลึกหัวข้อใกล้เคียง

คู่มือปฏิบัติ Group Policy (GPO) — กลไก การยืนยันการใช้ และการเลือกระหว่าง GPO กับ Intune

ยังแตะสภาพแวดล้อม AD โดยไม่รู้จริงว่าการแจกผ่าน GPO หมายความว่าอะไรอยู่หรือไม่ บทความนี้อธิบายกลไกของ Group Policy ลำดับการใช้ LSDOU การย...

นโยบายการตรวจสอบความปลอดภัยของ Windows และการสอบสวนบันทึกเหตุการณ์ในทางปฏิบัติ — เป็นทีมไอทีที่อ่าน 4625 ได้

คู่มือปฏิบัติเพื่อตอบคำขอ «ช่วยดูบันทึกการลงชื่อเข้าใช้ที่ล้มเหลว» ครอบคลุมความสัมพันธ์ของนโยบายการตรวจสอบพื้นฐานกับขั้นสูง หมวดย่อยที่คว...

คู่มือปฏิบัติที่เก็บใบรับรองของ Windows — จะใส่ฝั่งผู้ใช้หรือคอมพิวเตอร์

ใบรับรองลูกข่ายควรใส่ที่เก็บผู้ใช้หรือคอมพิวเตอร์ certmgr.msc ต่างจาก certlm.msc อย่างไร การให้สิทธิ์คีย์ลับ และการทำรายการวันหมดอายุด้วย...

ไฟร์วอลล์ Windows กับแอปธุรกิจ — ลงทะเบียนกฎขาเข้าจากตัวติดตั้ง

สาเหตุประจำของ «บนเครื่องพัฒนาทำงาน แต่ที่ลูกค้าสื่อสารไม่ได้» คือไฟร์วอลล์ Windows บทความนี้อธิบายบล็อกขาเข้าตามค่าเริ่มต้นกับโปรไฟล์ เห...

จาก Group Policy สู่ Intune — คู่มือโยกย้ายการจัดการอุปกรณ์สำหรับธุรกิจขนาดกลางและเล็ก

เมื่อเซิร์ฟเวอร์ AD ถึงรอบเปลี่ยน ควรอยู่กับ Group Policy หรือย้ายไป Entra ID บวก Intune? บทความนี้จัดสำหรับธุรกิจขนาดกลางและเล็กถึงความต...

หน้าเหล่านี้วางหัวข้อไว้ในบริบทที่กว้างขึ้นของบริการและการตัดสินใจ

บทความนี้เกี่ยวข้องโดยตรงกับบริการต่อไปนี้

คำถามที่พบบ่อย

คำถามที่มักพบในการปรึกษาเกี่ยวกับหัวข้อของบทความนี้

ใช้ LAPS รุ่นเก่า (Microsoft LAPS ที่แจกเป็น MSI) อยู่แล้ว ต้องทำอะไรไหม?
เริ่มวางแผนการโยกย้าย LAPS รุ่นเก่าถูกเลิกแนะนำตั้งแต่ Windows 11 23H2 เป็นต้นไป และบน OS ใหม่การติดตั้ง MSI เองถูกบล็อก OS ปัจจุบัน (Windows 10/11 ที่อัปเดตเดือนเมษายน 2023 แล้ว และ Windows Server 2019/2022 เป็นต้นไป) มี Windows LAPS ฝังอยู่แล้ว จึงโยกย้ายได้โดยไม่ต้องติดตั้งเพิ่ม ในช่วงโยกย้ายสามารถให้ Windows LAPS ประมวลผลนโยบายเก่าต่อด้วย «โหมดจำลอง LAPS รุ่นเก่า» ได้ แต่มีข้อจำกัด เช่น ไม่ทำงานบนเครื่องที่ยังติดตั้ง CSE ของ LAPS รุ่นเก่า และใช้ฟีเจอร์ใหม่อย่างการเข้ารหัสหรือการเก็บลง Entra ID ไม่ได้ โครงที่บัญชีเดียวกันถูกจัดการทั้งรุ่นเก่าและรุ่นใหม่ไม่ถูกรองรับ จึงต้องทำให้ชัดทีละเครื่องว่าฝ่ายใดเป็นผู้จัดการ แล้วสลับทีละเครื่อง
ใช้รหัสผ่านที่ได้มาแล้ว ทิ้งไว้เฉย ๆ ได้ไหม?
โครงค่าเริ่มต้นจะเก็บกวาดให้เอง แต่ไม่ใช่ทันที Windows LAPS มี PostAuthenticationActions ที่ทำงานหลังพ้นเวลาผ่อนผันนับจากตรวจพบการยืนยันตัวตน (ล็อกออน) ด้วยบัญชีเป้าหมาย โดยค่าเริ่มต้นรีเซ็ตรหัสผ่านและลงชื่อออกหลังยืนยันตัวตน 24 ชั่วโมง พูอีกอย่าง ในช่วงเวลานั้นรหัสผ่านเดิมยังใช้ได้ จึงไม่ใช่ «ใช้แล้วเป็นโมฆะทันที» และกลไกนี้ทำงานเมื่อ «ยืนยันตัวตนด้วยรหัสผ่าน» ไม่ใช่เมื่อ «เพียงอ่านจากไดเรกทอรี» ทางที่ชัวร์คือทำให้หมดอายุอย่างชัดเจนตอนงานเสร็จ หากเก็บใน AD ใช้ Set-LapsADPasswordExpirationTime ให้หมดอายุ (cmdlet นี้เฉพาะการเก็บใน AD) หากเก็บใน Entra ID ให้รัน Reset-LapsPassword บนเครื่องเป้าหมาย หรือใช้การหมุนเวียนรหัสผ่านผู้ดูแลท้องถิ่นใน Intune
ใช้กับพีซีเวิร์กกรุ๊ปที่ไม่เข้าร่วมโดเมนหรือ Entra ID ได้ไหม?
ใช้ไม่ได้ Windows LAPS ต้องการ Active Directory หรือ Microsoft Entra ID เป็นที่เก็บรหัสผ่าน จึงไม่มีที่สำรองบนเครื่องที่ไม่เข้าร่วมทั้งสอง หากจะคงเวิร์กกรุ๊ปต่อไป ทางแทนที่เป็นจริงคือตั้งรหัสผ่านผู้ดูแลท้องถิ่นต่างกันทีละเครื่อง แล้วทำบัญชีด้วยที่ปลอดภัย (ตัวจัดการรหัสผ่าน ฯลฯ) เมื่อจำนวนเครื่องมากขึ้น ถึงเวลาพิจารณาเข้าร่วม Entra ID (+Intune) หรือโดเมน เพื่อได้ประโยชน์จากการจัดการรวมศูนย์รวม LAPS
ใครดูรหัสผ่านที่ถูกเก็บได้บ้าง?
เมื่อเก็บใน Active Directory ค่าเริ่มต้นที่ดูได้คือสมาชิก Domain Admins และผู้ใช้หรือกลุ่มอื่นต้องได้รับสิทธิ์ชัดเจนด้วย Set-LapsADReadPasswordPermission แม้แอตทริบิวต์รหัสผ่านเป็นแอตทริบิวต์ลับ (confidential) แต่หลักการที่มีสิทธิ์ขยาย (All Extended Rights) บน OU ยังอ่านได้ จึงต้องตรวจด้วย 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 อาจมีข้อกำหนดแยก จึงตรวจเฉพาะจุดนั้น

โปรไฟล์ผู้เขียน

หน้าแนะนำผู้เขียนบทความ

Go Komura

ผู้แทนของ KomuraSoft LLC

เชี่ยวชาญด้านการพัฒนาซอฟต์แวร์ Windows ที่ปรึกษาเทคนิค และการตรวจสอบบั๊ก โดยเฉพาะโปรเจกต์ที่มีระบบเดิมและบั๊กที่ทำซ้ำได้ยาก

ลิงก์สาธารณะ

กลับไปยังบล็อก