保護內部部署服務帳戶
服務具有主要安全性身分識別,可決定本機和網路資源的存取權限。 Microsoft Win32 服務的安全性內容取決於用來啟動服務的服務帳戶。 您可以使用服務帳戶來:
- 識別及驗證服務。
- 成功啟動服務。
- 存取或執行程式碼或應用程式。
- 啟動程式。
內部部署服務帳戶的類型
根據您的使用案例,您可以使用受控服務帳戶 (MSA)、電腦帳戶或使用者帳戶來執行服務。 您必須先測試服務,以確認它可以使用受控服務帳戶。 如果服務可以使用 MSA,您應該使用一個。
群組受管理的服務帳戶
針對在內部部署環境中執行的服務,請盡可能使用 群組受控服務帳戶 (gMSA)。 gMSA 為在伺服器陣列或網路負載平衡器後方執行的服務提供單一身分識別解決方案。 gMSA 也可用於在單一伺服器上執行的服務。 如需 gMSA 需求的相關資訊,請參閱 開始使用群組受管理的服務帳戶 。
獨立受管理的服務帳戶
如果您無法使用 gMSA,請使用 獨立受控服務帳戶 (sMSA)。 sMSA 至少需要 Windows Server 2008 R2。 不同于 gMSA,sMSA 只會在一部伺服器上執行。 這些服務可用於該伺服器上的多個服務。
電腦帳戶
如果您無法使用 MSA,請考慮使用 電腦帳戶 。 LocalSystem 帳戶是預先定義的本機帳戶,在本機電腦上具有廣泛的許可權,並作為網路上的電腦身分識別。
以 LocalSystem 帳戶身分執行的服務會以 domain_name > \ < computer_name > 格式 < 使用電腦帳戶的認證來存取網路資源。 其預先定義的名稱是 NT AUTHORITY\SYSTEM。 您可以使用它來啟動服務,並為該服務提供安全性內容。
注意
當您使用電腦帳戶時,您無法判斷電腦上的哪個服務正在使用該帳戶。 因此,您無法稽核哪些服務正在進行變更。
使用者帳戶
如果您無法使用 MSA,請考慮使用 使用者帳戶 。 使用者帳戶可以是 網域 使用者帳戶或 本機 使用者帳戶。
網域使用者帳戶可讓服務充分利用 Windows 和 Microsoft Active Directory 網域服務的服務安全性功能。 此服務將具有授與帳戶的本機和網路許可權。 它也會擁有帳戶所屬之任何群組的許可權。 網域服務帳戶支援 Kerberos 相互驗證。
本機使用者帳戶(名稱格式: .\UserName )只存在於主機電腦的安全性帳戶管理員資料庫中。 其Active Directory 網域服務中沒有使用者物件。 網域無法驗證本機帳戶。 因此,在本機使用者帳戶的安全性內容中執行的服務無法存取網路資源(但匿名使用者除外)。 在本機使用者內容中執行的服務不支援其用戶端驗證服務的 Kerberos 相互驗證。 基於這些原因,本機使用者帳戶通常不適合啟用目錄的服務。
重要
服務帳戶不應該是任何特殊許可權群組的成員,因為特殊許可權群組成員資格會授與安全性風險的許可權。 每個服務都應該有自己的服務帳戶來進行稽核和安全性。
選擇正確的服務帳戶類型
準則 | gMSA | sMSA | 電腦帳戶 | 使用者帳戶 |
---|---|---|---|---|
應用程式在單一伺服器上執行 | Yes | 是。 可能的話,請使用 gMSA。 | 是。 可能的話,請使用 MSA。 | 是。 可能的話,請使用 MSA。 |
應用程式在多部伺服器上執行 | 是 | No | 否。 帳戶會系結至伺服器。 | 是。 可能的話,請使用 MSA。 |
應用程式在負載平衡器後方執行 | 是 | 無 | No | 是。 只有當您無法使用 gMSA 時,才使用 。 |
應用程式在 Windows Server 2008 R2 上執行 | No | Yes | 是。 可能的話,請使用 MSA。 | 是。 可能的話,請使用 MSA。 |
應用程式在 Windows Server 2012 上執行 | Yes | 是。 可能的話,請使用 gMSA。 | 是。 可能的話,請使用 MSA。 | 是。 可能的話,請使用 MSA。 |
將服務帳戶限制為單一伺服器的需求 | No | Yes | 是。 可能的話,請使用 sMSA。 | No |
使用伺服器記錄和 PowerShell 調查
您可以使用伺服器記錄來判斷應用程式執行所在的伺服器和伺服器數量。
若要取得網路上所有伺服器的 Windows Server 版本清單,您可以執行下列 PowerShell 命令:
Get-ADComputer -Filter 'operatingsystem -like "*server*" -and enabled -eq "true"' `
-Properties Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
sort-Object -Property Operatingsystem |
Select-Object -Property Name,Operatingsystem,OperatingSystemVersion,IPv4Address |
Out-GridView
尋找內部部署服務帳戶
建議您將 「svc-」 之類的前置詞新增至您作為服務帳戶的所有帳戶。 此命名慣例可讓帳戶更容易尋找和管理。 也請考慮針對服務帳戶和服務帳戶的擁有者使用描述屬性。 描述可以是小組別名或安全性小組擁有者。
尋找內部部署服務帳戶是確保其安全性的關鍵。 對於非 MSA 帳戶而言,這樣做可能會很困難。 建議您檢閱可存取重要內部部署資源的所有帳戶,並判斷哪些電腦或使用者帳戶可能作為服務帳戶。
若要瞭解如何尋找服務帳戶,請參閱一節 中 該帳戶類型的相關文章。
檔服務帳戶
在內部部署環境中找到服務帳戶之後,請記錄下列資訊:
擁有者 :負責維護帳戶的人員。
目的 :帳戶所代表的應用程式或其他用途。
許可權範圍 :其擁有或應擁有的許可權,以及其所屬的任何群組。
風險設定檔 :如果此帳戶遭到入侵,您企業的風險。 如果風險很高,請使用 MSA。
預期的存留期和定期證明 :您預期此帳戶將存留多久,以及擁有者應該檢閱並證明其持續需求的頻率。
密碼安全性 :針對儲存密碼的使用者和本機電腦帳戶。 請確定密碼會保持安全,以及具有存取權的檔。 請考慮使用 Privileged Identity Management 來保護儲存的密碼。
下一步
若要深入瞭解保護服務帳戶,請參閱下列文章: