共用方式為


保護群組受管理的服務帳戶

群組受管理的服務帳戶 (gMSA) 是網域帳戶,可協助保護服務。 gMSA 可在單一伺服器上或伺服器陣列中執行,例如網路負載平衡或 Internet Information Services (IIS) 伺服器後方的系統。 當您將服務設定為使用 gMSA 主體之後,Windows 作業系統 (OS) 就會接手處理帳戶密碼管理。

gMSA 的優點

gMSA 是具有更高安全性的身分識別解決方案,可協助降低系統管理額外負荷:

  • 設定強式密碼 - 240 位元組、隨機產生的密碼:gMSA 密碼的複雜度和長度可將暴力密碼破解或字典攻擊危害的可能性降到最低
  • 定期循環密碼 - 密碼管理會轉交給 Windows OS 負責,其每隔 30 天會變更密碼一次。 服務和網域管理員不需要排定密碼變更或管理服務中斷。
  • 支援部署至伺服器陣列 - 將 gMSA 部署到多部伺服器,以支援由多個主機執行相同服務的負載平衡解決方案
  • 支援簡化服務主體名稱 (SPN) 管理 - 在建立帳戶時使用 PowerShell 來設定 SPN。
    • 此外,如果已正確設定 gMSA 權限,支援自動 SPN 註冊的服務可能會針對 gMSA 進行此動作。

使用 gMSA

使用 gMSA 作為內部部署服務的帳戶類型,除非服務 (例如容錯移轉叢集) 不支援此功能。

重要

在服務進入實際執行環境之前,先使用 gMSA 測試您的服務。 設定測試環境以確保應用程式會使用 gMSA,然後再存取資源。 如需詳細資訊,請參閱對群組受管理服務帳戶的支援

如果服務不支援 gMSA,您可以使用獨立受管理的服務帳戶 (sMSA)。 sMSA 具有相同的功能,但適用於在單一伺服器上進行部署。

如果您無法使用服務所支援的 gMSA 或 sMSA,請將服務設定為以標準使用者帳戶的身分執行。 服務和網域管理員必須觀察強式密碼管理流程,以協助保護這些帳戶。

評定 gMSA 安全性態勢

sMSA 比標準使用者帳戶更安全,後者需要持續的密碼管理。 不過,請考慮與安全性態勢相關的 gMSA 存取範圍。 下表顯示使用 gMSA 的潛在安全性問題和緩和措施:

安全性問題 風險降低
gMSA 是具特殊權限群組的成員 - 檢閱群組成員資格。 建立 PowerShell 指令碼以列舉群組成員資格。 依 gMSA 檔案名稱篩選結果 CSV 檔案
- 從特殊權限群組中移除 gMSA
- 授與 gMSA 執行其服務所需的權限 (Right) 和權限 (Permission)。 查看您的服務廠商。
gMSA 具有對敏感性資源的讀取/寫入權限 - 稽核對敏感性資源的存取
- 將稽核記錄封存至 SIEM,例如 Azure Log Analytics 或 Microsoft Sentinel
- 如果有不必要的存取層級,請移除不必要的資源權限

尋找 gMSA

受管理的服務帳戶容器

若要有效運作,gMSA 必須位於 Active Directory 使用者和電腦 的受控服務帳戶容器中。

若要尋找不在清單中的服務 MSA,請執行下列命令:


Get-ADServiceAccount -Filter *

# This PowerShell cmdlet returns managed service accounts (gMSAs and sMSAs). Differentiate by examining the ObjectClass attribute on returned accounts.

# For gMSA accounts, ObjectClass = msDS-GroupManagedServiceAccount

# For sMSA accounts, ObjectClass = msDS-ManagedServiceAccount

# To filter results to only gMSAs:

Get-ADServiceAccount –Filter * | where-object {$_.ObjectClass -eq "msDS-GroupManagedServiceAccount"}

管理 gMSA

若要管理 gMSA,請使用下列 Active Directory PowerShell Cmdlet:

Get-ADServiceAccount

Install-ADServiceAccount

New-ADServiceAccount

Remove-ADServiceAccount

Set-ADServiceAccount

Test-ADServiceAccount

Uninstall-ADServiceAccount

注意

在 Windows Server 2012 和更新版本中,*-ADServiceAccount Cmdlet 可與 gMSA 搭配運作。 深入了解:開始使用群組受管理的服務帳戶

移至 gMSA

gMSA 是適用於內部部署的安全服務帳戶類型。 建議您盡可能使用 gMSA。 此外,請考慮將服務移至 Azure,並將服務帳戶移至 Microsoft Entra ID。

注意

將服務設定為使用 gMSA 之前,請參閱開始使用群組受管理的服務帳戶 (英文)。

移至 gMSA:

  1. 確定已在樹系中部署金鑰發佈服務 (KDS) 根金鑰。 這是一次性的操作。 請參閱建立金鑰發佈服務 KDS 根金鑰
  2. 建立新 gMSA。 請參閱開始使用群組受管理的服務帳戶
  3. 在執行服務的主機上安裝新的 gMSA。
  4. 將服務身分識別變更為 gMSA。
  5. 指定空白密碼。
  6. 驗證服務是否正在新的 gMSA 身分識別下運作。
  7. 刪除舊的服務帳戶身分識別。

下一步

若要深入了解如何保護服務帳戶,請參閱下列文章: