共用方式為


設定 AD FS、AD CS 和 Microsoft Entra Connect 的感測器

在 Active Directory 同盟服務 (AD FS) 、Active Directory 憑證服務 (AD CS) 上安裝適用於身分識別的 Defender 感測器,以及 Microsoft Entra Connect 伺服器,以協助保護它們免於遭受內部部署和混合式攻擊。 本文說明安裝步驟。

適用下列考慮:

  • 針對AD FS環境,只有同盟伺服器才支援適用於身分識別的Defender感測器。 在 Web 應用程式 Proxy (WAP) 伺服器上不需要它們。
  • 針對 AD CS 環境,您不需要在任何離線的 AD CS 伺服器上安裝感測器。
  • 針對 Microsoft Entra Connect 伺服器,您必須在作用中和預備伺服器上安裝感測器。

必要條件

在AD FS、AD CS或 Microsoft Entra Connect 伺服器上安裝適用於身分識別的Defender感測器的必要條件,與在域控制器上安裝感測器的必要條件相同。 如需詳細資訊,請參閱 適用於身分識別的 Microsoft Defender 必要條件

安裝在 AD FS、AD CS 或 Microsoft Entra Connect 伺服器上的感測器無法使用本地服務帳戶連線到網域。 相反地,您必須設定 目錄服務帳戶

此外,適用於 AD CS 的適用於身分識別的 Defender 感測器僅支援具有證書頒發機構單位角色服務的 AD CS 伺服器。

設定事件集合

如果您使用AD FS、AD CS或 Microsoft Entra Connect 伺服器,請確定您已視需要設定稽核。 如需詳細資訊,請參閱:

設定 AD FS 資料庫的讀取許可權

若要讓在 AD FS 伺服器上執行的感測器能夠存取 AD FS 資料庫,您必須為相關的目錄服務帳戶授與讀取 (db_datareader) 許可權。

如果您有多個 AD FS 伺服器,請務必在所有伺服器上授與此許可權。 資料庫許可權不會跨伺服器複寫。

設定 SQL Server 以允許具有下列 AdfsConfiguration 資料庫許可權的目錄服務帳戶:

  • 連接
  • 登錄
  • select

注意事項

如果 AD FS 資料庫是在專用的 SQL Server 而不是本機 AD FS 伺服器上執行,而且您使用群組受控服務帳戶 (gMSA) 作為目錄服務帳戶,請確定您授與 SQL Server 取 gMSA 密碼所需的許可權。

授與 AD FS 資料庫的存取權

使用 SQL Server Management Studio、Transact-SQL (T-SQL) 或 PowerShell 來授與 AD FS 資料庫的存取權。

例如,如果您使用 #DF07B7CA2DC5C4625A0239E0F94DA2914 (WID) 或外部 SQL Server,下列命令可能會很有説明。

在這些範例程式代碼中:

  • [DOMAIN1\mdiSvc01] 是工作區的目錄服務使用者。 如果您使用 gMSA,請附加 $ 至使用者名稱的結尾。 例如:[DOMAIN1\mdiSvc01$]
  • AdfsConfigurationV4 是AD FS資料庫名稱的範例,而且可能會有所不同。
  • server=\.\pipe\MICROSOFT##WID\tsql\query如果您使用 WID,則為資料庫的 連接字串。

提示

如果您不知道自己的 連接字串,請遵循 Windows Server 檔中的步驟。

若要使用 T-SQL 授與感測器 AD FS 資料庫的存取權:

USE [master]
CREATE LOGIN [DOMAIN1\mdiSvc01] FROM WINDOWS WITH DEFAULT_DATABASE=[master]
USE [AdfsConfigurationV4]
CREATE USER [DOMAIN1\mdiSvc01] FOR LOGIN [DOMAIN1\mdiSvc01]
ALTER ROLE [db_datareader] ADD MEMBER [DOMAIN1\mdiSvc01]
GRANT CONNECT TO [DOMAIN1\mdiSvc01]
GRANT SELECT TO [DOMAIN1\mdiSvc01]
GO

若要使用 PowerShell 將 AD FS 資料庫的存取權授與感測器:

$ConnectionString = 'server=\\.\pipe\MICROSOFT##WID\tsql\query;database=AdfsConfigurationV4;trusted_connection=true;'
$SQLConnection= New-Object System.Data.SQLClient.SQLConnection($ConnectionString)
$SQLConnection.Open()
$SQLCommand = $SQLConnection.CreateCommand()
$SQLCommand.CommandText = @"
USE [master]; 
CREATE LOGIN [DOMAIN1\mdiSvc01] FROM WINDOWS WITH DEFAULT_DATABASE=[master];
USE [AdfsConfigurationV4]; 
CREATE USER [DOMAIN1\mdiSvc01] FOR LOGIN [DOMAIN1\mdiSvc01]; 
ALTER ROLE [db_datareader] ADD MEMBER [DOMAIN1\mdiSvc01]; 
GRANT CONNECT TO [DOMAIN1\mdiSvc01]; 
GRANT SELECT TO [DOMAIN1\mdiSvc01];
"@
$SqlDataReader = $SQLCommand.ExecuteReader()
$SQLConnection.Close()

設定 Microsoft Entra Connect (ADSync) 資料庫的許可權

注意事項

只有當 Entra Connect 資料庫裝載於外部 SQL Server 實例時,本節才適用。

在 Microsoft Entra Connect 伺服器上執行的感測器必須具有 ADSync 資料庫的存取權,並具有相關預存程式的執行許可權。 如果您有多個 Microsoft Entra Connect 伺服器,請務必在所有伺服器上執行此動作。

若要使用 PowerShell 將感測器許可權授與 Microsoft Entra Connect ADSync 資料庫:

$entraConnectServerDomain = $env:USERDOMAIN
$entraConnectServerComputerAccount = $env:COMPUTERNAME
$entraConnectDBName = (Get-ItemProperty 'registry::HKLM\SYSTEM\CurrentControlSet\Services\ADSync\Parameters' -Name 'DBName').DBName
$entraConnectSqlServer = (Get-ItemProperty 'registry::HKLM\SYSTEM\CurrentControlSet\Services\ADSync\Parameters' -Name 'Server').Server
$entraConnectSqlInstance = (Get-ItemProperty 'registry::HKLM\SYSTEM\CurrentControlSet\Services\ADSync\Parameters' -Name 'SQLInstance').SQLInstance

$ConnectionString = 'server={0}\{1};database={2};trusted_connection=true;' -f $entraConnectSqlServer, $entraConnectSqlInstance, $entraConnectDBName
$SQLConnection= New-Object System.Data.SQLClient.SQLConnection($ConnectionString)
$SQLConnection.Open()
$SQLCommand = $SQLConnection.CreateCommand()
$SQLCommand.CommandText = @"
USE [master]; 
CREATE LOGIN [{0}\{1}$] FROM WINDOWS WITH DEFAULT_DATABASE=[master];
USE [{2}];
CREATE USER [{0}\{1}$] FOR LOGIN [{0}\{1}$];
GRANT CONNECT TO [{0}\{1}$];
GRANT SELECT TO [{0}\{1}$];
GRANT EXECUTE ON OBJECT::{2}.dbo.mms_get_globalsettings TO [{0}\{1}$];
GRANT EXECUTE ON OBJECT::{2}.dbo.mms_get_connectors TO [{0}\{1}$];
"@ -f $entraConnectServerDomain, $entraConnectServerComputerAccount, $entraConnectDBName
$SqlDataReader = $SQLCommand.ExecuteReader()
$SQLConnection.Close()

安裝後步驟 (選擇性)

在AD FS、AD CS或 Microsoft Entra Connect 伺服器上的感測器安裝期間,會自動選取最接近的域控制器。 使用下列步驟來檢查或修改選取的網域控制器:

  1. Microsoft Defender 全面偵測回應 中,移至 [設定身>分識別>感測器] 以檢視所有適用於身分識別的 Defender 感測器。

  2. 找出並選取您安裝在伺服器上的感測器。

  3. 在開啟的窗格中,於 [ 域控制器 (FQDN) ] 方塊中,輸入解析程式域控制器的完整域名 (FQDN) 。 選 取 [+ 新增 ] 以新增 FQDN,然後選取 [ 儲存]

    在適用於身分識別的 Defender 中設定 Active Directory 同盟服務 感測器解析程式之選取項目的螢幕快照。

初始化感測器可能需要幾分鐘的時間。 完成時,AD FS、AD CS 或 Microsoft Entra Connect 感測器的服務狀態會從停止變更為執行中。

驗證成功的部署

若要驗證您已在 AD FS 或 AD CS 伺服器上成功部署適用於身分識別的 Defender 感測器:

  1. 檢查 Azure 進階威脅防護感測器 服務是否正在執行。 儲存適用於身分識別的 Defender 感測器設定之後,可能需要幾秒鐘的時間,服務才會啟動。

  2. 如果服務未啟動,請檢閱 Microsoft.Tri.sensor-Errors.log 預設位於 的 %programfiles%\Azure Advanced Threat Protection sensor\Version X\Logs檔案。

  3. 使用AD FS或AD CS向任何應用程式驗證使用者,然後確認適用於身分識別的Defender觀察到驗證。

    例如,選取 [搜捕進階搜捕>]。 在 [ 查詢] 窗格上,輸入並執行下列其中一個查詢:

    • 針對 AD FS:

      IdentityLogonEvents | where Protocol contains 'Adfs'
      

      結果窗格應該包含具有 LogonType 值且具有 ADFS驗證登入的事件清單。

    • 針對 AD CS:

      IdentityDirectoryEvents | where Protocol == "Adcs"
      

      結果窗格會顯示失敗和成功發行憑證的事件清單。 選取特定數據列,以查看 [ 檢查記錄 ] 窗格上的其他詳細數據。

      Active Directory 憑證服務登入進階搜捕查詢結果的螢幕快照。

如需詳細資訊,請參閱: