服務使用者帳戶

每個服務都會在使用者帳戶的安全性內容中執行。 安裝服務時 ,CreateService 函式會指定帳戶的使用者名稱和密碼。 您可以使用 ChangeServiceConfig 函式來變更使用者名稱和密碼。 您可以使用 QueryServiceConfig 函式來取得使用者名稱 (,但不能取得與服務物件相關聯的密碼) 。 服務控制管理員 (SCM) 會自動載入使用者設定檔。

啟動服務時,SCM 會登入與服務相關聯的帳戶。 如果登入成功,系統會產生存取權杖,並將它附加至新的服務進程。 此權杖會在與安全性實體物件的所有後續互動中識別服務進程, (具有與其相關聯之安全性描述元的物件) 。 例如,如果服務嘗試開啟管道的控制碼,系統會先比較服務的存取權杖與管道的安全性描述項,再授與存取權。

SCM 不會維護服務使用者帳戶的密碼。 如果密碼已過期,登入就會失敗,且服務無法啟動。 將帳戶指派給服務的系統管理員可以建立具有永不過期密碼的帳戶。 系統管理員也可以使用 服務組態程式 定期變更密碼來管理密碼到期的帳戶。

如果服務在共用其資訊之前必須辨識另一個服務,第二個服務可以使用與第一個服務相同的帳戶,或者可以在屬於第一個服務所辨識別名的帳戶中執行。 需要以分散式方式跨網路執行的服務應該在全網域帳戶中執行。

您可以指定下列其中一個特殊帳戶,而不是指定服務的使用者帳戶: