次の方法で共有


AD FS、AD CS、Microsoft Entra Connect のセンサーを構成する

Defender for Identity センサーを Active Directory フェデレーション サービス (AD FS)、Active Directory 証明書サービス (AD CS)、および Microsoft Entra Connect サーバーにインストールして、オンプレミスおよびハイブリッド攻撃から保護します。 この記事ではインストール手順について説明します。

以下の考慮事項が適用されます。

  • AD FS 環境の場合、Defender for Identity センサーはフェデレーション サーバーでのみサポートされます。 Web アプリケーション プロキシ (WAP) サーバーでは必要ありません。
  • AD CS 環境の場合、オフラインの AD CS サーバーにセンサーをインストールする必要はありません。
  • Microsoft Entra Connect サーバーの場合、アクティブ サーバーとステージング サーバーの両方にセンサーをインストールする必要があります。

前提条件

AD FS、AD CS、または Microsoft Entra Connect サーバーに Defender for Identity センサーをインストールするための前提条件は、ドメイン コントローラーにセンサーをインストールする場合と同じです。 詳細については、「Microsoft Defender for Identity の前提条件」を参照してください。

AD FS、AD CS、または Microsoft Entra Connect サーバーにインストールされたセンサーは、ローカル サービス アカウントを使用してドメインに接続できません。 代わりに、 ディレクトリ サービス アカウントを構成する必要があります。

さらに、AD CS 用の Defender for Identity センサーは、証明機関役割サービスを備えた AD CS サーバーのみをサポートします。

イベント収集を構成する

AD FS、AD CS、または Microsoft Entra Connect サーバーを使用している場合は、必要に応じて監査を構成していることを確認してください。 詳細については、以下を参照してください:

AD FS データベースの読み取りアクセス許可を構成する

AD FS サーバー上で実行されているセンサーが AD FS データベースにアクセスするには、関連する ディレクトリ サービス アカウントに読み取り ( db_datareader) 権限を付与する必要があります。

AD FS サーバーが複数ある場合は、すべてのサーバーにこの権限を付与するようにしてください。 データベース権限はサーバー間で複製されません。

SQL サーバーを構成して、ディレクトリ サービス アカウントに AdfsConfiguration データベースへの次の権限を許可します。

  • 接続
  • ログイン
  • 読み取り
  • 選択

Note

AD FS データベースがローカル AD FS サーバーではなく専用の SQL サーバー上で実行されており、ディレクトリ サービス アカウントとしてグループ管理サービス アカウント (gMSA) を使用している場合は、gMSA のパスワードを取得するための 必要なアクセス許可 を SQL サーバーに付与していることを確認してください。

AD FS データベースへのアクセス権限を付与する

SQL Server Management Studio、Transact-SQL (T-SQL)、または PowerShell を使用して、AD FS データベースへのアクセスを許可します。

たとえば、Windows Internal Database (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) データベースのアクセス許可を構成する

Note

このセクションは、Entra Connect データベースが外部 SQL サーバー インスタンスでホストされている場合にのみ適用されます。

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 XDRで [設定>][ID>][センサー] の順に移動して、すべての Defender for Identity センサーを表示します。

  2. サーバーにインストールしたセンサーを見つけて選択します。

  3. 開いたペインの ドメイン コントローラー (FQDN) ボックスに、リゾルバー ドメイン コントローラーの完全修飾ドメイン名 (FQDN) を入力します。 [+ 追加] を選択して FQDN を追加し、[保存] を選択します。

    Defender for Identity で Active Directory フェデレーション サービス センサー リゾルバーを構成するための選択項目のスクリーンショット。

センサーの初期化には数分かかる場合があります。 完了すると、AD FS、AD CS、または Microsoft Entra Connect センサーのサービス ステータスが 停止 から 実行中に変わります。

デプロイが成功したことを検証します。

AD FS または AD CS サーバーに Defender for Identity センサーが正常に展開されたことを確認するには、次の手順を実行します。

  1. Azure Advanced Threat Protection センサー サービスが実行されていることを確認します。 Defender for Identity センサーの設定を保存した後、サービスが開始されるまでに数秒かかる場合があります。

  2. サービスが開始しない場合は、デフォルトで %programfiles%\Azure Advanced Threat Protection sensor\Version X\Logsにある Microsoft.Tri.sensor-Errors.log ファイルを確認してください。

  3. AD FS または AD CS を使用して任意のアプリケーションに対してユーザーを認証し、Defender for Identity が認証を監視していることを確認します。

    たとえば、[検出>][高度な検出] の順に選択します。 クエリ ペインで、次のいずれかのクエリを入力して実行します。

    • AD FS の場合:

      IdentityLogonEvents | where Protocol contains 'Adfs'
      

      結果ペインには、 LogonType 値が ADFS 認証によるログオンであるイベントのリストが含まれます。

    • AD CS の場合:

      IdentityDirectoryEvents | where Protocol == "Adcs"
      

      結果ペインには、失敗した証明書発行と成功した証明書発行のイベントのリストが表示されます。 特定の行を選択すると、 レコードの検査 ペインで追加の詳細が表示されます。

      Active Directory 証明書サービス ログオンの高度なハンティングクエリの結果のスクリーンショット。

詳細については、以下を参照してください。