適用於 適用於身分識別的 Microsoft Defender 的目錄服務帳戶
本文說明 適用於身分識別的 Microsoft Defender 如何使用目錄服務帳戶 (DSA) 。
注意事項
無論設定的目錄服務帳戶為何,感測器服務都會在LocalService身分識別下運作,而更新程式服務會在LocalSystem身分識別下運作。
雖然在某些情況下 DSA 是選擇性的,但建議您為適用於身分識別的 Defender 設定 DSA,以取得完整的安全性涵蓋範圍。
例如,當您設定 DSA 時,DSA 會在啟動時用來連線到域控制器。 DSA 也可用來查詢域控制器,以取得網路流量、受監視事件和受監視 ETW 活動中所見實體的數據
下列功能需要 DSA:
使用 安裝在AD FS/ AD CS 伺服器上的感測器時。
透過對裝置進行 SAM-R 呼叫 ,從網路流量、事件和 ETW 活動中看到的裝置要求本機系統管理員群組的成員清單。 收集的數據可用來計算潛在的橫向動作路徑。
存取 DeletedObjects 容器以收集已刪除使用者和計算機的相關信息。
網域和信任對應,這會在感測器啟動時發生,且每隔 10 分鐘會再次發生。
從其他網域中的實體偵測活動時,透過LDAP查詢另一個網域以取得詳細數據。
當您使用單一 DSA 時,DSA 必須具有樹系中所有網域的 讀 取許可權。 在不受信任的多樹系環境中,每個樹系都需要 DSA 帳戶。
每個網域中有一個感測器定義為 網域同步器,並負責追蹤網域中實體的變更。 例如,變更可能包括建立的物件、適用於身分識別的Defender所追蹤的實體屬性等等。
注意事項
根據預設,適用於身分識別的Defender最多支援30個認證。 若要新增更多認證,請連絡適用於身分識別的Defender支援。
支援的 DSA 帳戶選項
適用於身分識別的Defender支援下列 DSA 選項:
選項 | 描述 | 組態 |
---|---|---|
群組受控服務帳戶 gMSA (建議) | 提供更安全的部署和密碼管理。 Active Directory 會管理帳戶密碼的建立和輪替,就像計算機帳戶的密碼一樣,您可以控制帳戶密碼變更的頻率。 | 如需詳細資訊, 請參閱使用 gMSA 設定適用於身分識別的 Defender 的目錄服務帳戶。 |
一般用戶帳戶 | 開始使用時容易使用,而且更輕鬆地設定受信任樹系之間的 讀 取許可權,但需要額外的密碼管理額外負荷。 一般用戶帳戶較不安全,因為它需要您建立和管理密碼,而且如果密碼過期且使用者和 DSA 都未更新,可能會導致停機。 |
在 Active Directory 中建立新的帳戶,以作為具有所有物件 讀 取許可權的 DSA,包括 DeletedObjects 容器的 許可權。 如需詳細資訊,請 參閱授與必要的 DSA 許可權。 |
本地服務帳戶 | 本機服務帳戶是現成可用的,而且預設會在未設定 DSA 時使用。 備註: |
無 |
注意事項
雖然本地服務帳戶預設會與感測器搭配使用,而且在某些情況下,DSA 是選擇性的,但建議您為適用於身分識別的 Defender 設定 DSA 以取得完整的安全性涵蓋範圍。
DSA 專案使用量
本節說明如何使用 DSA 專案,以及感測器如何在任何指定的案例中選取 DSA 專案。 感測器嘗試會根據 DSA 項目類型而有所不同:
類型 | 描述 |
---|---|
gMSA 帳戶 | 感測器會嘗試從 Active Directory 擷取 gMSA 帳戶密碼,然後登入網域。 |
一般用戶帳戶 | 感測器會嘗試使用設定的使用者名稱和密碼登入網域。 |
套用下列邏輯:
感測器會尋找目標網域名完全相符的專案。 如果找到完全相符的專案,感測器會嘗試使用該專案中的認證進行驗證。
如果沒有完全相符的專案,或驗證失敗,感測器會使用 DNS FQDN 在清單中搜尋父域的專案,並嘗試改為使用父專案中的認證進行驗證。
如果父域沒有專案,或驗證失敗,感測器會使用 DNS FQDN 在清單中搜尋同層級網域專案,並嘗試改為使用同層級專案中的認證進行驗證。
如果沒有同層級網域的專案,或驗證失敗,感測器會再次檢閱清單,並嘗試再次驗證每個專案,直到成功為止。 DSA gMSA 專案優先順序高於一般 DSA 專案。
使用 DSA 的範例邏輯
本節提供一個範例,說明當您有多個帳戶時,感測器如何嘗試整個 DSA,包括 gMSA 帳戶和一般帳戶。
套用下列邏輯:
感測器會在目標網域的 DNS 功能變數名稱之間尋找相符專案,例如
emea.contoso.com
和 DSA gMSA 專案,例如emea.contoso.com
。感測器會尋找目標網域的 DNS 功能變數名稱之間的相符專案,例如
emea.contoso.com
和 DSA 一般專案 DSA,例如emea.contoso.com
感測器會在目標網域的根 DNS 名稱中尋找相符專案,例如
emea.contoso.com
和 DSA gMSA 專案功能變數名稱,例如contoso.com
。感測器會在目標網域的根 DNS 名稱中尋找相符專案,例如
emea.contoso.com
和 DSA 一般專案功能變數名稱,例如contoso.com
。感測器會尋找同層級網域的目標功能變數名稱,例如
emea.contoso.com
和 DSA gMSA 專案功能變數名稱,例如apac.contoso.com
。感測器會尋找同層級網域的目標功能變數名稱,例如
emea.contoso.com
和 DSA 一般專案功能變數名稱,例如apac.contoso.com
。感測器會執行所有 DSA gMSA 專案的迴圈配置資源。
感測器會執行所有 DSA 一般專案的迴圈配置資源。
此範例中顯示的邏輯會使用下列組態來實作:
DSA 專案:
DSA1.emea.contoso.com
DSA2.fabrikam.com
先使用的感測器和 DSA 專案:
域控制器 FQDN 使用的 DSA 專案 DC01.emea.contoso.com
DSA1.emea.contoso.com
DC02.contoso.com
DSA1.emea.contoso.com
DC03.fabrikam.com
DSA2.fabrikam.com
DC04.contoso.local
迴圈賽
重要事項
如果感測器無法在啟動時透過LDAP成功向Active Directory網域進行驗證,感測器將不會進入執行中狀態,而且會產生健康情況問題。 如需詳細資訊,請參閱 適用於身分識別的Defender健康情況問題。
授與必要的 DSA 許可權
DSA 需要 Active Directory 中 所有 物件的唯讀許可權,包括 刪除的物件容器。
[ 刪除的物件 ] 容器上的只讀許可權可讓適用於身分識別的 Defender 偵測您 Active Directory 中的使用者刪除。
使用下列程式代碼範例,協助您授與 [刪除的物件 ] 容器上所需的讀取許可權,無論您是否使用 gMSA 帳戶。
提示
如果您想要授與許可權的 DSA 是 gMSA) (群組受控服務帳戶,您必須先建立安全組、將 gMSA 新增為成員,然後將許可權新增至該群組。 如需詳細資訊, 請參閱使用 gMSA 設定適用於身分識別的 Defender 的目錄服務帳戶。
# Declare the identity that you want to add read access to the deleted objects container:
$Identity = 'mdiSvc01'
# If the identity is a gMSA, first to create a group and add the gMSA to it:
$groupName = 'mdiUsr01Group'
$groupDescription = 'Members of this group are allowed to read the objects in the Deleted Objects container in AD'
if(Get-ADServiceAccount -Identity $Identity -ErrorAction SilentlyContinue) {
$groupParams = @{
Name = $groupName
SamAccountName = $groupName
DisplayName = $groupName
GroupCategory = 'Security'
GroupScope = 'Universal'
Description = $groupDescription
}
$group = New-ADGroup @groupParams -PassThru
Add-ADGroupMember -Identity $group -Members ('{0}$' -f $Identity)
$Identity = $group.Name
}
# Get the deleted objects container's distinguished name:
$distinguishedName = ([adsi]'').distinguishedName.Value
$deletedObjectsDN = 'CN=Deleted Objects,{0}' -f $distinguishedName
# Take ownership on the deleted objects container:
$params = @("$deletedObjectsDN", '/takeOwnership')
C:\Windows\System32\dsacls.exe $params
# Grant the 'List Contents' and 'Read Property' permissions to the user or group:
$params = @("$deletedObjectsDN", '/G', ('{0}\{1}:LCRP' -f ([adsi]'').name.Value, $Identity))
C:\Windows\System32\dsacls.exe $params
# To remove the permissions, uncomment the next 2 lines and run them instead of the two prior ones:
# $params = @("$deletedObjectsDN", '/R', ('{0}\{1}' -f ([adsi]'').name.Value, $Identity))
# C:\Windows\System32\dsacls.exe $params
如需詳細資訊,請參閱 變更已刪除物件容器的許可權。
透過PowerShell測試您的 DSA 許可權和委派
使用下列 PowerShell 命令來確認您的 DSA 沒有太多許可權,例如強大的系統管理員許可權:
Test-MDIDSA [-Identity] <String> [-Detailed] [<CommonParameters>]
例如,若要檢查 mdiSvc01 帳戶的許可權並提供完整詳細數據,請執行:
Test-MDIDSA -Identity "mdiSvc01" -Detailed
如需詳細資訊,請參閱 DefenderForIdentity PowerShell 參考。