使用 Active Directory 保護內部部署電腦帳戶

電腦帳戶或 LocalSystem 帳戶具有高度許可權,可存取本機電腦上的幾乎所有資源。 帳戶未與登入的使用者帳戶相關聯。 服務會以 LocalSystem 存取網路資源的形式執行,方法是以 格式 <domain_name>\\<computer_name>$ 將電腦認證呈現給遠端伺服器。 電腦帳戶預先定義的名稱為 NT AUTHORITY\SYSTEM 。 您可以啟動服務並提供該服務的安全性內容。

Screenshot of a list of local services on a computer account.

使用電腦帳戶的優點

電腦帳戶具有下列優點:

  • 不受限制的本機存取 - 電腦帳戶提供電腦本機資源的完整存取權
  • 自動密碼管理 - 移除手動變更密碼的需求。 帳戶是 Active Directory 的成員,且其密碼會自動變更。 使用電腦帳戶時,不需要註冊服務主體名稱。
  • 有限的電腦 存取權限 - Active Directory 網域服務 (AD DS) 中的預設存取控制清單允許對電腦帳戶的最小存取權。 未經授權的使用者存取期間,服務對網路資源的存取有限。

電腦帳戶安全性狀態評估

使用下表來檢閱潛在的電腦帳戶問題和風險降低措施。

電腦帳戶問題 風險降低
當電腦離開並重新加入網域時,電腦帳戶可能會遭到刪除和重新建立。 確認將電腦新增至 Active Directory 群組的需求。 若要確認新增至群組的電腦帳戶,請使用下一節中的腳本。
如果您將電腦帳戶新增至群組,該電腦上以 LocalSystem 身分執行的服務會取得群組存取權限。 選擇性地瞭解電腦帳戶群組成員資格。 請勿將電腦帳戶設為網域系統管理員群組的成員。 相關聯的服務具有 AD DS 的完整存取權。
LocalSystem 的網路預設值不正確。 請勿假設電腦帳戶具有網路資源的預設有限存取權。 請改為確認帳戶的群組成員資格。
執行為 LocalSystem 的未知服務。 請確定在 LocalSystem 帳戶下執行的服務Microsoft 服務或受信任的服務。

尋找服務和電腦帳戶

若要尋找在電腦帳戶下執行的服務,請使用下列 PowerShell Cmdlet:

Get-WmiObject win32_service | select Name, StartName | Where-Object {($_.StartName -eq "LocalSystem")}

若要尋找屬於特定群組成員的電腦帳戶,請執行下列 PowerShell Cmdlet:

Get-ADComputer -Filter {Name -Like "*"} -Properties MemberOf | Where-Object {[STRING]$_.MemberOf -like "Your_Group_Name_here*"} | Select Name, MemberOf

若要尋找身分識別系統管理員群組成員的電腦帳戶(網域系統管理員、企業系統管理員和系統管理員),請執行下列 PowerShell Cmdlet:

Get-ADGroupMember -Identity Administrators -Recursive | Where objectClass -eq "computer"

電腦帳戶建議

重要

電腦帳戶具有高度特殊許可權,因此如果您的服務需要不受限制的本機資源存取權,而且您無法使用受控服務帳戶 (MSA)。

  • 使用 MSA 確認服務擁有者的服務執行
  • 如果您的服務支援,請使用群組受控服務帳戶 (gMSA),或獨立受控服務帳戶 (sMSA)
  • 使用具有執行服務所需許可權的網域使用者帳戶

下一步

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