(การควบคุมบัญชีผู้ใช้) เป็นองค์ประกอบสำคัญของความปลอดภัยของ Windows เมื่อคุณเรียกใช้แอปพลิเคชันหรือกระบวนการใดๆ ที่ต้องใช้สิทธิ์ของผู้ดูแลระบบ พยายามเปลี่ยนการตั้งค่าระบบ รีจิสตรีคีย์ที่ได้รับการป้องกัน หรือไฟล์ระบบ คอมโพเนนต์ UAC จะสลับเดสก์ท็อปเป็นโหมดที่ได้รับการป้องกัน (Secure Desktop) และขอให้ผู้ดูแลระบบยืนยันการดำเนินการเหล่านี้ ด้วยวิธีนี้ UAC จะช่วยป้องกันการเปิดตัวกระบวนการและมัลแวร์ที่อาจเป็นอันตรายต่อคอมพิวเตอร์ของคุณ
ภาพหน้าจอด้านล่างแสดงให้เห็นว่าเมื่อคุณพยายามเรียกใช้ Registry Editor (regedit.exe
) ใน Windows 10 หน้าต่างยืนยัน UAC จะปรากฏขึ้น:
User Account Control Do you want to allow this app to make changes to your device?
UAC ไม่ได้เปิดใช้งานสำหรับบัญชีผู้ดูแลระบบในตัว ซึ่งถูกปิดใช้งานโดยค่าเริ่มต้นใน Windows 10
ในบทความนี้ เราจะมาดูวิธีจัดการการตั้งค่า UAC บนคอมพิวเตอร์เครื่องเดียวหรือหลายเครื่องในโดเมนโดยใช้นโยบายกลุ่ม
ระดับตัวเลื่อนการควบคุมบัญชีผู้ใช้ใน Windows 10
ใน Windows 7 (และใหม่กว่า) การตั้งค่า UAC บนคอมพิวเตอร์จะได้รับการจัดการโดยใช้แถบเลื่อนพิเศษ (เรียกผ่านแผงควบคุมหรือ UserAccountControlSettings.exe
ไฟล์). การใช้แถบเลื่อนนี้ คุณสามารถเลือกระดับการป้องกันการควบคุมบัญชีผู้ใช้ที่กำหนดไว้ล่วงหน้าได้หนึ่งในสี่ระดับ
- ระดับ 4 — แจ้งเตือนเสมอ — ระดับการป้องกัน UAC สูงสุด
- ระดับ 3 — แจ้งเตือนเฉพาะเมื่อโปรแกรมพยายามเปลี่ยนแปลง mycomputer (ค่าเริ่มต้น) – ระดับการป้องกันเริ่มต้น
- ระดับ 2 — แจ้งเตือนเมื่อโปรแกรมพยายามเปลี่ยนแปลงคอมพิวเตอร์ของฉันเท่านั้น (อย่าทำให้เดสก์ท็อปของฉันมืดลง) – เกือบจะเหมือนกับระดับก่อนหน้า แต่ไม่ต้องเปลี่ยนเป็น Secure Desktop ด้วยการล็อกเดสก์ท็อป
- ระดับ 1 — ไม่ต้องแจ้งเตือน – UAC ถูกปิดใช้งาน
ตามค่าเริ่มต้นใน Windows 10 การป้องกัน UAC ระดับ 3 ใช้ซึ่งจะแสดงการแจ้งเตือนเมื่อคุณพยายามเปลี่ยนไฟล์ระบบหรือการตั้งค่าเท่านั้น
จะปิดการใช้งานการควบคุมบัญชีผู้ใช้ใน Windows โดยใช้ GPO ได้อย่างไร
ในกรณีส่วนใหญ่ ไม่แนะนำให้ปิดใช้งาน UAC โดยสิ้นเชิง การควบคุมบัญชีผู้ใช้เป็นเครื่องมือรักษาความปลอดภัย Windows ที่เรียบง่ายแต่มีประสิทธิภาพ ในทางปฏิบัติ ฉันไม่เคยปิดใช้งาน UAC บนคอมพิวเตอร์ของผู้ใช้โดยไม่ได้ตรวจสอบให้แน่ใจว่า UAC บล็อกฟังก์ชันบางอย่าง แม้ในกรณีเหล่านี้ มีวิธีแก้ไขปัญหาเบื้องต้นง่ายๆ ในการปิดใช้งาน UAC สำหรับแอปพลิเคชันเฉพาะ หรือเรียกใช้แอปโดยไม่มีสิทธิ์ของผู้ดูแลระบบและระงับข้อความแจ้ง UAC
คุณสามารถปิดการใช้งาน UAC โดยใช้นโยบายกลุ่ม บนคอมพิวเตอร์แบบสแตนด์อโลน คุณสามารถใช้ Local Group Policy Editor gpedit.msc
. หากคุณต้องการปรับใช้นโยบายกับคอมพิวเตอร์โดเมน คุณต้องใช้ Group Policy Management Console – gpmc.msc
(ลองพิจารณาตัวเลือกนี้)
- ในโดเมน GPO Management Console ให้คลิกที่ OU ที่มีคอมพิวเตอร์ที่คุณต้องการปิดใช้งาน UAC และสร้างวัตถุนโยบายใหม่
- แก้ไขนโยบายและไปที่ส่วนการกำหนดค่าคอมพิวเตอร์ -> นโยบาย -> การตั้งค่า Windows -> การตั้งค่าความปลอดภัย -> นโยบายท้องถิ่น -> ตัวเลือกความปลอดภัย;
- ส่วนนี้มีหลายตัวเลือกที่ควบคุมการตั้งค่า UAC ชื่อของพารามิเตอร์เหล่านี้ขึ้นต้นด้วย การควบคุมบัญชีผู้ใช้;
- หากต้องการปิดใช้งาน UAC โดยสมบูรณ์ ให้ตั้งค่าพารามิเตอร์ต่อไปนี้:
- การควบคุมบัญชีผู้ใช้:การทำงานของข้อความแจ้งการยกระดับสำหรับผู้ดูแลระบบในโหมดการอนุมัติของผู้ดูแลระบบ =
Elevate without prompting
; - การควบคุมบัญชีผู้ใช้:ตรวจจับการติดตั้งแอปพลิเคชันและแจ้งการยกระดับ =
Disabled
; - การควบคุมบัญชีผู้ใช้:เรียกใช้ผู้ดูแลระบบทั้งหมดในโหมดการอนุมัติของผู้ดูแลระบบ =
Disabled
; - การควบคุมบัญชีผู้ใช้:ยกระดับเฉพาะแอปพลิเคชัน UIAccess ที่ติดตั้งในตำแหน่งที่ปลอดภัย =
Disabled
.
- การควบคุมบัญชีผู้ใช้:การทำงานของข้อความแจ้งการยกระดับสำหรับผู้ดูแลระบบในโหมดการอนุมัติของผู้ดูแลระบบ =
- คุณต้องรีสตาร์ทคอมพิวเตอร์ไคลเอนต์เพื่ออัปเดตการตั้งค่านโยบายกลุ่มและปิดใช้งาน UAC หลังจากรีบูต UAC จะเปลี่ยนเป็นโหมด "ไม่ต้องแจ้งเตือน"
คุณยังสามารถปิดใช้งาน UAC สำหรับผู้ใช้/คอมพิวเตอร์บางเครื่องเท่านั้นผ่านทางรีจิสทรี และปรับใช้การตั้งค่าผ่าน Group Policy Preferences
สร้างพารามิเตอร์รีจิสทรีใหม่ภายใต้ส่วน GPO การกำหนดค่าคอมพิวเตอร์ -> ค่ากำหนด -> การตั้งค่า Windows -> รีจิสทรี ด้วยการตั้งค่าต่อไปนี้:
- การดำเนินการ:แทนที่
- ไฮฟ์:HKEY_LOCAL_MACHINE
- เส้นทางคีย์:SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
- ชื่อค่า:เปิดใช้งานLUA
- ประเภทค่า:REG_DWORD
- ข้อมูลค่า:0
จากนั้นไปที่ ทั่วไป แท็บและเปิดใช้งานตัวเลือก:
- ลบรายการนี้เมื่อไม่ได้ใช้อีกต่อไป
- การกำหนดเป้าหมายระดับรายการ
คลิก การกำหนดเป้าหมาย และระบุคอมพิวเตอร์หรือกลุ่มความปลอดภัยของโดเมนที่คุณต้องการใช้นโยบายปิดใช้งาน UAC
แม้จะปิดใช้งาน UAC แล้ว แอปบางแอปอาจถูกบล็อกไม่ให้เปิดใช้พร้อมข้อความว่าแอปนี้ถูกบล็อกเพื่อความปลอดภัยของคุณการตั้งค่าคีย์รีจิสทรี UAC
คุณสามารถจัดการการตั้งค่า UAC ผ่านรีจิสทรีได้ พารามิเตอร์ที่รับผิดชอบต่อการทำงานของการควบคุมบัญชีผู้ใช้จะอยู่ภายใต้คีย์รีจิสทรี HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System .
เมื่อคุณเปลี่ยนค่าของตัวเลื่อน UAC ในแผงควบคุม Windows จะเปลี่ยนค่าของการตั้งค่ารีจิสทรีจากคีย์ reg นี้ดังนี้ (ด้านล่างนี้คือไฟล์ REG ที่พร้อมใช้งานสำหรับระดับต่างๆ ของแถบเลื่อนการควบคุมบัญชีผู้ใช้):
UAC ระดับ 4 (แจ้งเตือนเสมอ):
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System] "ConsentPromptBehaviorAdmin"=dword:00000002 "ConsentPromptBehaviorUser"=dword:00000003 "EnableInstallerDetection"=dword:00000001 "EnableLUA"=dword:00000001 "EnableVirtualization"=dword:00000001 "PromptOnSecureDesktop"=dword:00000001 "ValidateAdminCodeSignatures"=dword:00000000 "FilterAdministratorToken"=dword:00000000
UAC ระดับ 3 (แจ้งเตือนเฉพาะเมื่อโปรแกรมพยายามเปลี่ยนแปลงคอมพิวเตอร์ของฉัน):
"ConsentPromptBehaviorAdmin"=dword:00000005 "ConsentPromptBehaviorUser"=dword:00000003 "EnableInstallerDetection"=dword:00000001 "EnableLUA"=dword:00000001 "EnableVirtualization"=dword:00000001 "PromptOnSecureDesktop"=dword:00000001 "ValidateAdminCodeSignatures"=dword:00000000 "FilterAdministratorToken"=dword:00000000
UAC ระดับ 2:
"ConsentPromptBehaviorAdmin"=dword:00000005 "ConsentPromptBehaviorUser"=dword:00000003 "EnableInstallerDetection"=dword:00000001 "EnableLUA"=dword:00000001 "EnableVirtualization"=dword:00000001 "PromptOnSecureDesktop"=dword:00000000 "ValidateAdminCodeSignatures"=dword:00000000 "FilterAdministratorToken"=dword:00000000
UAC ระดับ 1 (ไม่ต้องแจ้งเตือน — ปิดใช้งาน UAC โดยสมบูรณ์):
"ConsentPromptBehaviorAdmin"=dword:00000000 "ConsentPromptBehaviorUser"=dword:00000003 "EnableInstallerDetection"=dword:00000001 "EnableLUA"=dword:00000001 "EnableVirtualization"=dword:00000001 "PromptOnSecureDesktop"=dword:00000000 "ValidateAdminCodeSignatures"=dword:00000000 "FilterAdministratorToken"=dword:00000000
คุณสามารถเปลี่ยนค่าของพารามิเตอร์ใดก็ได้โดยใช้ Registry Editor GUI หรือจากพรอมต์คำสั่ง ตัวอย่างเช่น หากต้องการปิดใช้งาน UAC บนคอมพิวเตอร์ (จำเป็นต้องรีบูต) คุณสามารถเรียกใช้คำสั่ง:
reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f.
หรือคำสั่ง PowerShell ที่คล้ายกัน:
New-ItemProperty -Path HKLM:Software\Microsoft\Windows\CurrentVersion\policies\system -Name EnableLUA -PropertyType DWord -Value 0 -Force
การควบคุมบัญชีผู้ใช้บน Windows Server
การควบคุมบัญชีผู้ใช้ใน Windows Server ทำงานและมีการจัดการในลักษณะเดียวกับที่ใช้กับ Windows รุ่นเดสก์ท็อป
เป็นที่ยอมรับได้ในการปิดใช้งาน UAC อย่างสมบูรณ์ใน Windows Server 2016/2019 หากเงื่อนไขต่อไปนี้เป็นจริง:
- เฉพาะผู้ดูแลระบบเท่านั้นที่สามารถเข้าถึงเดสก์ท็อปเซิร์ฟเวอร์จากระยะไกล (ต้องปิดการเข้าถึง RDP ไปยังเซิร์ฟเวอร์สำหรับผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบ) บนโฮสต์ RDS ให้เปิดใช้งาน UAC ไว้
- ผู้ดูแลระบบควรใช้ Windows Server เฉพาะสำหรับงานจัดการดูแลระบบเท่านั้น ผู้ดูแลระบบควรทำงานกับเอกสารสำนักงาน แมสเซนเจอร์ เว็บเบราว์เซอร์บนเวิร์กสเตชันภายใต้บัญชีผู้ใช้ที่ไม่มีสิทธิพิเศษที่เปิดใช้งาน UAC เท่านั้น และไม่ใช่บนโฮสต์เซิร์ฟเวอร์ (ดูบทความเกี่ยวกับแนวทางปฏิบัติที่ดีที่สุดสำหรับการรักษาความปลอดภัยบัญชีผู้ดูแลระบบ)
เมื่อเปิดใช้งาน UAC แล้ว Windows Server จะไม่อนุญาตให้เชื่อมต่อจากระยะไกลภายใต้บัญชีคอมพิวเตอร์ในพื้นที่ (ผ่านการใช้งานเน็ต, winrm, Powershell Remoting) โทเค็นของผู้ใช้จะถูกกรองโดย UAC LocalAccountTokenFilterPolicy
ที่เปิดใช้งาน พารามิเตอร์ (กล่าวถึงในส่วนก่อนหน้า)
การตั้งค่าตัวเลื่อน UAC และนโยบายกลุ่ม
คุณสามารถจัดการการตั้งค่า UAC ทั้งโดยใช้ตัวเลื่อนและ GPO แต่ไม่มีพารามิเตอร์ Group Policy เดียวที่อนุญาตให้เลือกระดับการป้องกัน UAC หนึ่งระดับจากสี่ระดับ (ซึ่งสัมพันธ์กับตำแหน่งของตัวเลื่อน UAC) ขอแนะนำให้จัดการการตั้งค่า UAC โดยใช้พารามิเตอร์ GPO 10 ตัวแทน นโยบายเหล่านี้อยู่ในส่วนต่อไปนี้ของตัวแก้ไข GPO:การกำหนดค่าคอมพิวเตอร์ -> นโยบาย -> การตั้งค่า Windows -> การตั้งค่าความปลอดภัย -> นโยบายท้องถิ่น -> ตัวเลือกความปลอดภัย . พารามิเตอร์นโยบายกลุ่มที่เกี่ยวข้องกับ UAC เริ่มต้นด้วย การควบคุมบัญชีผู้ใช้ .
ตารางต่อไปนี้แสดงรายการพารามิเตอร์ UAC Group Policy และคีย์การลงทะเบียนที่เกี่ยวข้อง
ชื่อนโยบาย | พารามิเตอร์รีจิสทรีที่กำหนดโดยนโยบาย |
การควบคุมบัญชีผู้ใช้:โหมดการอนุมัติผู้ดูแลระบบสำหรับบัญชีผู้ดูแลระบบในตัว | FilterAdministratorToken |
การควบคุมบัญชีผู้ใช้:อนุญาตให้แอปพลิเคชัน UIAccess แจ้งการยกระดับโดยไม่ต้องใช้เดสก์ท็อปที่ปลอดภัย | EnableUIADesktopToggle |
การควบคุมบัญชีผู้ใช้:การทำงานของข้อความแจ้งการยกระดับสำหรับผู้ดูแลระบบในโหมดการอนุมัติของผู้ดูแลระบบ | ConsentPromptBehaviorAdmin |
การควบคุมบัญชีผู้ใช้:พฤติกรรมของข้อความแจ้งระดับความสูงสำหรับผู้ใช้มาตรฐาน | ConsentPromptBehaviorUser |
การควบคุมบัญชีผู้ใช้:ตรวจจับการติดตั้งแอปพลิเคชันและแจ้งให้ยกระดับ | EnableInstallerDetection |
การควบคุมบัญชีผู้ใช้:ยกระดับเฉพาะไฟล์เรียกทำงานที่ลงชื่อและตรวจสอบแล้ว | ValidateAdminCodeSignatures |
การควบคุมบัญชีผู้ใช้:ยกระดับเฉพาะแอปพลิเคชัน UIAccess ที่ติดตั้งในตำแหน่งที่ปลอดภัย | EnableSecureUIAPaths |
การควบคุมบัญชีผู้ใช้:เรียกใช้ผู้ดูแลระบบทั้งหมดในโหมดการอนุมัติของผู้ดูแลระบบ | เปิดใช้งานLUA |
การควบคุมบัญชีผู้ใช้:เปลี่ยนไปใช้เดสก์ท็อปที่ปลอดภัยเมื่อขอยกระดับ | PromptOnSecureDesktop |
การควบคุมบัญชีผู้ใช้:จำลองความล้มเหลวในการเขียนไฟล์และรีจิสทรีไปยังตำแหน่งต่อผู้ใช้ | เปิดใช้งานการจำลองเสมือน |
โดยค่าเริ่มต้น UAC ระดับ 3 จะใช้การตั้งค่านโยบายกลุ่มต่อไปนี้:
UAC ระดับ 3 (ค่าเริ่มต้น)
โหมดการอนุมัติผู้ดูแลระบบสำหรับบัญชีผู้ดูแลระบบในตัว =Disabled
อนุญาตให้แอปพลิเคชัน UIAccess แจ้งระดับความสูงโดยไม่ต้องใช้เดสก์ท็อปที่ปลอดภัย =
Disabled
ลักษณะการทำงานของข้อความแจ้งการยกระดับสำหรับผู้ดูแลระบบในโหมดการอนุมัติของผู้ดูแลระบบ =
Prompt for consent for non-Windows binaries
ลักษณะการทำงานของข้อความแจ้งระดับความสูงสำหรับผู้ใช้มาตรฐาน =
Prompt for credentials on the secure desktop
ตรวจจับการติดตั้งแอปพลิเคชันและแจ้งการยกระดับ =
Enabled
(สำหรับเวิร์กกรุ๊ป) Disabled
(สำหรับอุปกรณ์ Windows ที่เข้าร่วมโดเมน)เฉพาะยกระดับไฟล์เรียกทำงานที่ลงชื่อและตรวจสอบแล้ว =
Disabled
ยกระดับเฉพาะแอปพลิเคชัน UIAccess ที่ติดตั้งในตำแหน่งที่ปลอดภัย =
Enabled
เรียกใช้ผู้ดูแลระบบทั้งหมดในโหมดอนุมัติผู้ดูแลระบบ =
Enabled
เปลี่ยนไปใช้เดสก์ท็อปที่ปลอดภัยเมื่อขอยกระดับ =
Enabled
จำลองความล้มเหลวในการเขียนไฟล์และรีจิสตรีไปยังตำแหน่งต่อผู้ใช้ =
Enabled