家用電腦、Kiosk 模式、測試機器常需跳過登入畫面直接進桌面。Windows 提供多種自動登入方式,各有優缺點與適用場景。本文詳細說明三種主流方法、安全風險與對策。
regedit。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinlogonAutoAdminLogon = 1(啟用)DefaultUserName = 目標帳戶名稱(如 Admin)DefaultPassword = 該帳戶密碼(明文儲存,見風險提示)DefaultDomainName = 本機名稱(工作群組)或網域名(域環境)優點: 無需第三方工具、支援域帳戶、可透過群組原則/腳本大量部署。
缺點: 密碼明文存儲於註冊表,任何有系統讀取權限的使用者/程式均可提取。
netplwiz 或 control userpasswords2(舊版相容)。優點: 操作直觀、憑證加密儲存、相對安全。
缺點: 不支援域帳戶自動登入(需註冊表法)、Home 版可能隱藏該選項(需註冊表啟用 DevicePasswordLessBuildVersion = 0)。
如:Windows 登入設定工具、Autologon (Sysinternals)、各類優化大師。
原理: 封裝上述註冊表或 LSA API 操作。
注意: 僅下載官方/信任來源工具,避免攜帶惡意碼。
| 風險 | 說明 | 緩解措施 |
|---|---|---|
| 實體存取者直接進桌面 | 無密碼保護,任何人開機即可存取資料 | • 僅用於物理安全可控環境(家用、鎖定機櫃) • 啟用 BitLocker 磁碟加密 + TPM + PIN,開機前仍需輸入 PIN |
| 密碼明文洩露(註冊表法) | 注冊表可被普通用戶讀取,惡意軟體易竊取 | • 優先使用 netplwiz 法(LSA 加密) • 必須用註冊表法時,設定 ACL 限制該鍵值僅 SYSTEM/Administrators 可讀 |
| 遠端桌面/網路共享受影響 | 自動登入帳戶若為空密碼,網路登入會被拒絕 | • 確保自動登入帳戶設有強密碼 • 遠端桌面另建專用帳戶 |
| 更新/修補後自動登入失效 | 功能更新可能重置 AutoAdminLogon=0 | • 建立啟動腳本檢查並修正註冊表值 |
# 以管理員執行,支援加密儲存密碼
$cred = Get-Credential -Message "輸入自動登入帳戶密碼"
$autoLogonKey = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
Set-ItemProperty $autoLogonKey -Name "AutoAdminLogon" -Value "1"
Set-ItemProperty $autoLogonKey -Name "DefaultUserName" -Value $cred.UserName
Set-ItemProperty $autoLogonKey -Name "DefaultDomainName" -Value $env:COMPUTERNAME
# 密碼寫入 LSA 祕密區(需 P/Invoke 或第三方模組),此處略過
Write-Host "請改用 netplwiz 完成密碼設定,或使用 Sysinternals Autologon.exe"
任一方法將 AutoAdminLogon 改為 0,或在 netplwiz 重新勾選「使用者必須輸入使用者名稱和密碼」。
自動登入是把雙面刃:用得好是效率神器,用不好是安全漏洞。請依環境風險評估選擇方法,並務必搭配磁碟加密、螢幕鎖定(Win+L)等補償性控制措施。