共用方式為


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

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

這些考慮適用於:

  • 針對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 資料庫的下列權限的目錄服務帳戶:

  • connect
  • 登錄
  • read
  • select

注意

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

授與 AD FS 資料庫的存取權

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

例如,如果您使用 Windows 內部資料庫 (WID) 或外部 SQL 伺服器,下列命令可能會很有説明。

在這些範例程式代碼中:

  • [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}$];
ALTER ROLE [db_datareader] ADD MEMBER [{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'
      

      結果窗格應該包含事件清單,其中包含具有使用ADFS驗證登入的LogonType值的事件清單。

    • 針對 AD CS:

      IdentityDirectoryEvents | where Protocol == "Adcs"
      

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

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

如需詳細資訊,請參閱