如果我在網域使用者帳戶下的某個主機上執行 Windows 服務,且該帳戶的密碼稍後發生更改,那麼該服務現在是否無法啟動,直到您更新密碼為止?
如果不是,網域使用者帳戶的憑證如何以允許它們在密碼變更後繼續存在的方式保留在執行服務的電腦上?
答案1
是的,如果您更改密碼。然後您還必須更新該服務的密碼。
答案2
此外,在 Windows Server 2008 R2(和 Windows 7)中,有一個新的(或兩個)服務帳戶類型(託管服務帳戶)它將為您管理密碼。
答案3
Will the service now fail to start, until you update the password?
是的。這使得第二個問題毫無意義。
我通常會停用「服務」帳戶的密碼過期,將它們設定為極其複雜的密碼,並停用它們對每台電腦的登入權限,然後將它們新增至具有所需權限的本機電腦中。
答案4
使用最近更改了帳戶密碼的網域帳戶的憑證運行的服務帳戶僅在該服務重新啟動期間才會遇到問題。由於尚未使用新密碼更新伺服器,因此在您使用正確的密碼更新服務屬性之前,您的服務將無法驗證服務帳戶憑證。
話雖如此,建議您對需要網域層級存取的服務使用 SERVER\NETWORK SERVICE 帳戶。 NETWORK SERVICE 帳戶實際上是連結到 Active Directory 中 DOMAIN\SERVERNAME 目錄物件的別名帳戶。
前任。伺服器 A\網路服務 --> 網域\伺服器 A
假設執行該服務的伺服器是 ServerA,而您的服務需要存取的資源是 ServerB。透過將服務配置為使用 ServerA\NETWORK 帳戶,SERVICE 實際上將使用 DOMAIN\ServerA 帳戶運行。這還有一個額外的好處,即自動電腦密碼變更機制(預設)每 30 天進行一次,對您或您的服務透明。
此外,如果您需要授予服務與同一林中的資源伺服器(ServerB) 通訊的權限,您可以簡單地編輯ServerB 上的存取權限,以向DOMAIN\ServerA 帳戶授予存取權限(請記住,這是實際的) ServerA\NETWORK SERVICE 帳戶的帳戶),然後對 ServerB 上的資源的所有請求都將使用 DOMAIN\ServerA 帳戶的憑證執行。
話雖如此,Windows 2008 中的託管服務帳戶(感謝奧斯卡指出這一點)看起來是處理服務帳戶需求的更好方法!