題 當我在域上時,如何在Windows 7中啟用自動登錄?


當Windows 7加入域時,高級用戶管理控制台中不再提供自動登錄選項。由於我正在運行一個小型的主域,因為SharePoint和TFS,我將如何啟用此設置?

HowToGeek文章 這裡介紹了它,但是當加入域時,這些選項被禁用。


77
2017-08-24 09:32


起源




答案:


來自: 我的數字生活文章

  1. 單擊開始,單擊運行,鍵入 regedit,然後單擊“確定”。在Windows中   Vista / 7,簡單輸入 regedit 在開始   搜索並按Enter鍵。

  2. 導航到以下註冊表​​項:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

  3. 雙擊 DefaultUserName 輸入,鍵入要登錄的用戶名   用,然後單擊確定。

    如果 DefaultUserName 找不到註冊表值名稱,創建一個   新 字符串值(REG_SZ) 有價值的   名字為 DefaultUserName

  4. 雙擊 DefaultPassword 輸入,鍵入用戶的密碼   帳戶下的值數據框,然後單擊確定。

    如果沒有 DefaultPassword 價值,創造一個新的 字符串值   (REG_SZ) 同 DefaultPassword 作為值名稱。

    請注意,如果沒有 DefaultPassword 指定了字符串,Windows自動更改了該值 AutoAdminLogon 註冊表項從1(true)到0(false)關閉 AutoAdminLogon 特徵。

  5. 在Windows Vista / 7中, DefaultDomainName 必須同時指定,否則Windows將提示用戶名無效,用戶名顯示為 .\username。為此,   雙擊 DefaultDomainName,並指定用戶的域名   帳戶。如果是本地用戶,請指定本地主機名。

    如果 DefaultDomainName 不存在,創造一個新的 字符串值   (REG_SZ) 註冊表項,值為 DefaultDomainName

  6. 雙擊 AutoAdminLogon 進入,類型 1 在“數值數據”框中,   然後單擊“確定”。

    如果沒有 AutoAdminLogon 進入,創造一個新的 字符串值(REG_SZ) 同 AutoAdminLogon 作為值名稱。

  7. 如果存在,請刪除 AutoLogonCount 鍵。

  8. 如果它存在,刪除 AutoLogonChecked 鍵。

  9. 退出註冊表編輯器。

  10. 單擊開始,單擊重新啟動,然後單擊確定。


112
2017-08-24 09:45



我可以確認這適用於加入域的Windows 7 VM。關於註冊表中密碼的可訪問性,我有一點擔心:讀取這些密鑰不需要特權;但我的VM使用的是虛擬機,所以希望它不是太嚴重。 - jmtd
@jmtd - 工作和安全最佳實踐是兩個獨立的事情!我只建議使用自助服務終端/訪客/類似帳戶。 - William Hilsum
在自助服務終端上,您應該使用組策略禁用註冊表訪問,以防止用戶訪問登錄密碼。設置是 User Config\Admin Templates\System\Prevent Access to Registry Editing Tools。 - Bacon Bits
這可能不是最聰明的方法。有多種方法可以在不使用regedit.exe的情況下訪問註冊表。 VBScript,PowerShell,“reg”命令,可能還有更多。我認為更改註冊表項本身的ACL以防止用戶查看它是一個更好的主意。 - Tmdean
...為了添加我所做的小評論,如果將其用於kios或類似的,你可能希望使用鎖定軟件/瀏覽器處於kiosk模式或更多,以便用戶實際上無法訪問桌面.. 。 - William Hilsum


繼William Hilsum的回答之後,此方法不要求您在註冊表中以明文形式保留密碼(儘管我不確定如何實際存儲身份驗證)。

步驟1

作為本地管理員,告訴Windows允許管理員自動登錄。

在Regedit中,瀏覽到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon。 如果不存在,則創建一個名為的新字符串值 AutoAdminLogon 將此值設置為1

第2步

告訴Windows記住登錄密碼。

在運行框中,鍵入 control userpasswords2 確保您的域用戶名在列表中,如果沒有,請添加它。 解開(或勾选和解開): 用戶必須輸入用戶名和密碼才能使用此計算機。 確保您的用戶名已被選中。單擊“應用”

此時,Windows應提示輸入將要使用的密碼。

第3步

現在回頭 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 確保設置了以下字符串值,如果沒有,請設置它們:

  • DefaultUserName:您的域用戶名(沒有域前綴)
  • DefaultDomainName:你的域名

那應該是它。

密碼更改注意事項:

每次更改密碼時,您都需要從步驟2重做此過程。不幸的是,每次保存該對話框時,Windows都會將DefaultDomainName重置為本地計算機名稱,因此您必須手動將其更改回來。


21
2017-09-03 09:15



它必須是Windows 7的SP1,擺脫了“userpasswords2”控制面板小程序。它似乎不再存在。 - Josh M.
它在SP1上適用於我。您是否按照指示從“運行”框中運行它?它未在控制面板中列出 - 您必須手動運行它。 - Adam Millerchip
可能是我在一個域上,並且在那種情況下控制面板小程序不可用。不知道為什麼,但它沒有出現。我一直在用 control userpasswords2 自2003年左右開始。 ;-) - Josh M.
剛想了一下。根據OP的鏈接,你也嘗試過 netplwiz? - Adam Millerchip
我更喜歡這個答案,因為密碼似乎沒有以明文形式存儲。在Win7 SP1的域環境中為我工作。 - jmagnusson


繼@Adam Millerchip的回答之後,我們可以將密碼更改工作減少到加入域之前的狀態,當我們每次都必須再次運行控制userpasswords2來存儲新密碼時。現在我們在一個域上,我們可以運行一個批處理文件而不是運行控制userpasswords2並恢復我們的域和用戶名註冊表設置:

AfterPwdChange.bat

control userpasswords2
pause
regedit /s WinLogonBit.reg

WinLogonBit.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="mydomainusername"
"DefaultDomainName"="mydomain"

如果想要自動登錄的原因是讓啟動程序運行,我們可能仍然希望工作站在啟動後最終鎖定。如果是這樣,我們可以使用以下命令在Startup文件夾中放置一個快捷方式:

C:\Windows\System32\rundll32.exe user32.dll,LockWorkStation

3
2018-02-15 19:22