หากคุณเห็นข้อผิดพลาด The sign-in method is not allowed เมื่อพยายามล็อกอิน Windows แสดงว่าการตั้งค่า Group Policy ที่ได้ผลป้องกันการล็อกอินท้องถิ่นสำหรับบัญชีผู้ใช้ปัจจุบัน ข้อผิดพลาดนี้มักปรากฏหากคุณพยายามล็อกอินเข้าคอมพิวเตอร์โดยใช้บัญชีผู้เยี่ยมชม (guest) หรือเข้าคอนโทรลเลอร์โดเมนโดยใช้บัญชีผู้ใช้ที่ไม่มีสิทธิ์ผู้ดูแลระบบโดเมน อย่างไรก็ตาม อาจมีเหตุผลอื่นๆ ด้วย
The sign-in method you're trying to use isn't allowed. For more info, contact your network administrator.
รายการผู้ใช้และกลุ่มที่ได้รับอนุญาตให้ล็อกอินท้องถิ่นเข้าคอมพิวเตอร์ถูกกำหนดค่าผ่าน GPO
- เปิด Local Group Policy Editor (
gpedit.msc) - ไปที่ Computer Configuration → Windows Settings → Security Settings → Local Policies → User Rights Assignment
- ค้นหา Allow log on locally ในรายการนโยบาย
- นโยบายนี้มีรายการกลุ่มและผู้ใช้ที่ได้รับอนุญาตให้ล็อกอินเข้าคอมพิวเตอร์ท้องถิ่น ขึ้นอยู่กับระบบปฏิบัติการและบทบาทคอมพิวเตอร์ รายการกลุ่มที่ได้รับอนุญาตให้ล็อกอินท้องถิ่นอาจแตกต่างกัน ตัวอย่างเช่น การล็อกอินท้องถิ่นได้รับอนุญาตสำหรับกลุ่มผู้ใช้ต่อไปนี้บนเวิร์กสเตชัน Windows 10 และเซิร์ฟเวอร์ Windows Server 2022, 2019, 2016:
- Administrators
- Backup Operators
- Users
บนเซิร์ฟเวอร์ที่รัน Windows Server พร้อมบทบาทโดเมนคอนโทรลเลอร์ Active Directory (ADDS) การล็อกอินแบบโต้ตอบได้รับอนุญาตสำหรับกลุ่มต่อไปนี้:
- Account Operators
- Administrators
- Backup Operators
- Print Operators
- Server Operators
คุณสามารถอนุญาตการล็อกอินท้องถิ่นสำหรับผู้ใช้หรือกลุ่มอื่นๆ ได้ โดยคลิก Add User or Group และเลือกผู้ใช้ที่ต้องการเพิ่ม เช่น คุณต้องการป้องกันไม่ให้ผู้ใช้ที่ไม่ใช่แอดมินล็อกอินเข้าอุปกรณ์ ให้ลบกลุ่ม Users ออกจากการตั้งค่านโยบาย
หลังจากทำการเปลี่ยนแปลงแล้ว ให้อัปเดตการตั้งค่า Group Policy โดยใช้คำสั่ง gpupdate /force (ไม่ต้องรีบูท)
นอกจากนี้ ยังมีนโยบายอีกอย่างที่ป้องกันการล็อกอินท้องถิ่นแบบโต้ตอบเข้ Windows ในส่วน GPO เดียวกัน นโยบายนี้เรียกว่า Deny log on locally ในกรณีของผม การล็อกอินท้องถิ่นแบบไม่ระบุตัวตนภายใต้บัญชี Guest ถูกปฏิเสธบนคอมพิวเตอร์
คุณสามารถป้องกันกลุ่มเฉพาะ (หรือผู้ใช้) ไม่ให้ล็อกอินเข้าคอมพิวเตอร์ท้องถิ่นได้โดยเพิ่มพวกเขาในนโยบายนี้ เนื่องจากนโยบาย Deny log on locally มีลำดับความสำคัญสูงกว่า Allow log on locally ผู้ใช้จะไม่สามารถล็อกอินเข้าคอมพิวเตอร์ได้พร้อมข้อผิดพลาด:
The sign-in method isn't allowed.
หนึ่งในแนวทางปฏิบัติที่ดีที่สุดในการรักษาบัญชีผู้ดูแลระบบที่มีสิทธิ์สูงในโดเมน Windows คือการปฏิเสธการล็อกอินท้องถิ่นเข้าวเวิร์กสเตชันและเซิร์ฟเวอร์ภายใต้บัญชี Domain Admins เพื่อทำเช่นนี้ ให้นำมอบนโยบาย Deny log on locally ให้กลุ่ม Domain Admins สำหรับ OU ทั้งหมดยกเว้น Domain Controllers ด้วยวิธีเดียวกัน คุณต้องปฏิเสธการล็อกอินภายใต้บัญชีท้องถิ่น
ในสภาพแวดล้อมโดเมน อาจมี GPO หลายตัวที่กำหนดให้คอมพิวเตอร์ ดังนั้นเพื่อรับนโยบายที่อนุญาตการล็อกอินท้องถิ่น คุณต้องตรวจสอบการตั้งค่านโยบายที่ได้ผล คุณสามารถใช้คอนโซล rsop.msc หรือเครื่องมือ gpresult เพื่อรับการตั้งค่า GPO ที่ได้ผลบนคอมพิวเตอร์ของคุณ
โปรดทราบว่าผู้ใช้สามารถใช้เซสชัน RDP แบบโต้ตอบเพื่อเชื่อมต่อกับอุปกรณ์ Windows ได้ (หากเปิดใช้งาน RDP บนอุปกรณ์นั้น) 儘管ถูกปฏิเสธการล็อกอินท้องถิ่น รายการผู้ใช้ที่ได้รับอนุญาตให้ล็อกอินผ่าน Remote Desktop Services ตั้งค่าในส่วน GPO เดียวกันโดยใช้ตัวเลือก Allow logon through Remote Desktop Services
อีกเหตุผลหนึ่งที่คุณอาจเห็นข้อผิดพลาด "The sign-in method you are trying to use isn't allowed" คือเมื่อรายการคอมพิวเตอร์ที่ผู้ใช้ได้รับอนุญาตให้ล็อกอินถูกจำกัดในแอตทริบิวต์ LogonWorkstations ของผู้ใช้ใน AD (อ่านเพิ่มเติมที่นี่) โดยใช้คำสั่ง PowerShell Get-ADUser, คุณสามารถแสดงรายการคอมพิวเตอร์ที่ผู้ใช้ได้รับอนุญาตให้ล็อกอิน (โดยค่าเริ่มต้นรายการว่าง):
(Get-ADUser maxbak -Properties LogonWorkstations).LogonWorkstations
ในบางกรณี คุณอาจอนุญาตให้ผู้ใช้ล็อกอินเข้าคอนโทรลเลอร์โดเมน/โฮสต์ Windows Server ผ่าน RDP หรือท้องถิ่น เพียงพอที่จะเพิ่มบัญชีผู้ใช้ในนโยบายท้องถิ่น Allow log on locally บนเซิร์ฟเวอร์ของคุณ อย่างไรก็ตาม จะดีกว่าที่จะเพิ่มผู้ใช้ในกลุ่ม Local Administrators แม้ว่า จะดีกว่านั้นอีกคือการใช้โดเมนคอนโทรลเลอร์แบบ RODC เพื่อเหตุผลด้านความปลอดภัย
คุณยังสามารถอนุญาตการล็อกอินท้องถิ่นโดยใช้ ntrights (เครื่องมือนี้รวมอยู่ในบางเวอร์ชัน Admin Pack เก่า) เช่น เพื่ออนุญาตการล็อกอินท้องถิ่นสำหรับกลุ่มโดเมน ให้รันคำสั่งด้านล่าง:
ntrights +r SeInteractiveLogonRight -u "GroupName"
เพื่อปฏิเสธการล็อกอินท้องถิ่น:
ntrights -r SeInteractiveLogonRight -u "UserName"