リポジトリからISOCワークスペース用のコードとしてコンテンツをデプロイする(プレビュー)

Microsoft Defenderの統合セキュリティ運用センター(ISOC)と連携したリポジトリを使い、CI/CDを使ってカスタムセキュリティコンテンツをISOCワークスペースに管理・展開できます。

コンテンツはMicrosoft Defenderポータルや外部のGitHubやAzure DevOpsリポジトリから管理できます。 外部リポジトリ内のコンテンツを管理することで、Microsoft Defenderの外部でコンテンツを更新し、それらの更新を自動的にISOCワークスペースに展開できます。

ISOCワークスペースのCI/CD体験およびサポートされるコンテンツタイプは、既存のMicrosoft Sentinelリポジトリ体験と同じです。

Note

この機能は プレビュー段階です。 プレビュー期間中に機能や利用可能性が変更される可能性があります。

前提条件

開始する前に、次の要件が満たされていることを確認します。

  • お客様のテナントはISOC の対象です。
  • リソースグループ内の ISOCワークスペース があり、 そこでオーナー の役割を持っています。
  • 初期のCI/CD設定では、Microsoft Entra IDでグローバル管理者の役割があります。
  • ワークスペースにデプロイしたいカスタムコンテンツファイルは対応フォーマットです。 サポートされている形式については、「 リポジトリのコンテンツを計画する」を参照してください。
  • 接続の作成に使用するアカウントは、ホーム テナントにあります。 B2Bゲストアカウントや委任アクセスなどの外部アイデンティティはサポートされていません。
  • (カスタム検出ルールのみ)あなたはMicrosoft 365 E5ライセンス、またはMicrosoft Defender XDRを含む同等のライセンスを持っています。 詳細については、「 カスタム検出ルールをコードとしてデプロイする」を参照してください。

GitHub prerequisites

GitHubに接続する前に、以下のことを確認してください:

  • あなたはGitHubリポジトリにCollaboratorアクセス権を持っています。
  • GitHub Actionsは有効です。

Azure DevOps の前提条件

Azure DevOpsに接続する前に、以下のことを確認してください:

  • Project管理者はAzure DevOpsリポジトリへのアクセス権を持っています。
  • Azure DevOpsのアプリケーション接続ポリシーでは、OAuthを通じたサードパーティのアプリケーションアクセスが有効になっています。
  • Azure DevOps接続はISOCワークスペースと同じテナント内にあります。

展開可能なコンテンツタイプの詳細については、「 リポジトリコンテンツの計画」をご覧ください。

リポジトリを接続する

この手順を使って、GitHubやAzure DevOpsリポジトリをISOCワークスペースに接続してください。

各接続は、分析ルール、自動化ルール、カスタム検出ルール、ハンティングクエリ、パーサー、プレイブック、ワークブックなど、複数の種類のカスタムコンテンツをサポートできます。 詳細については、「Microsoft Sentinelのコンテンツとソリューションについて」を参照してください。

同じリポジトリで重複接続を作成し、単一のISOCワークスペース内で分岐することはできません。

  1. Microsoft Defender ポータルにサインインします。

  2. 接続に使う資格情報でソース管理アプリケーションにサインインしていることを確認してください。

  3. DefenderポータルでMicrosoft Sentinel>コンテンツ管理>リポジトリを選択します。

  4. [新規追加] を選択します。

  5. 「 新しいデプロイメント接続を作成 」ページで、接続名を入力してください。

  6. 接続の説明を入力します。

  7. ソースコントロールから、接続したいリポジトリタイプを選択します。

  8. [承認] を選択します。

  9. ソース コントロール プロバイダーについて、次の手順を完了してください:

    1. 入力を求められたら、GitHub 資格情報を入力します。

      接続を初めて追加すると、Microsoft Sentinel への接続を承認するように求められます。 同じブラウザですでにGitHubアカウントにサインインしている場合、GitHubの認証情報は自動的に入力されます。

    2. リポジトリで接続したいリポジトリを選択します。

    3. [ リポジトリの追加] を選択します。

      リポジトリに初めて接続すると、新しいブラウザウィンドウやタブが開き、Azure-Sentinelアプリのインストールを促します。

    4. GitHubでAzure-Sentinelアプリをインストールしたいリポジトリを選択します。

    5. Azure-Sentinelアプリをインストールしてください。

    6. 「 新しいデプロイメント接続を作成 」ページに戻る。

    7. Branchから、ISOCワークスペースに接続したいブランチを選択します。

    8. コンテンツ タイプから、展開したいコンテンツを選択します。

      パーサーもハンティングクエリも、 保存 検索APIを使ってコンテンツを展開します。 これらのコンテンツタイプのうち1つを選択し、ブランチにもう1つのタイプが含まれている場合、両方のコンテンツタイプが展開されます。

      その他のコンテンツタイプについては、選択したコンテンツタイプのみが展開されます。

    9. を選択してを作成します。

      例えば次が挙げられます。

      新しい GitHub リポジトリ接続のスクリーンショット。

接続を作成すると、リポジトリに新しいワークフローまたはパイプラインが生成されます。 リポジトリに保存されたコンテンツはISOCワークスペースにデプロイされます。

展開時間は、展開するコンテンツの量によって異なる場合があります。

デプロイの状態を表示する

GitHubでデプロイ状況を見るには:

  1. GitHubでリポジトリを開きます。

  2. [Actions](アクション) タブを選択します。

  3. ワークフロー .yaml ファイルを選択して、デプロイログやエラーメッセージを表示してください。

Azure DevOpsのデプロイメントステータスを見るには:

  1. Azure DevOpsでリポジトリを開きます。

  2. パイプライン タブを選択してください。

展開完了後:

  • リポジトリに保存されたコンテンツは、Defenderポータル内の対応するMicrosoft Sentinelページに表示されます。
  • リポジトリページの接続詳細には、展開状況、最終展開時刻、デプロイログへのリンクが表示されます。

例えば次が挙げられます。

リポジトリ接続のスクリーンショットで、デプロイメントログとステータスが示されています。

デフォルトでは、ワークフローは前回のデプロイ以降に修正されたコンテンツのみをデプロイします。 この動作は、デプロイメントトリガーを変更したり、スマートデプロイメントをオフにしたり、特定のルートフォルダにデプロイを制限したりすることでカスタマイズできます。

詳細については、「 リポジトリ展開のカスタマイズ」をご覧ください。

コンテンツの編集

リポジトリ接続を作成した後は、Microsoft Defenderで直接編集するのではなく、リポジトリ内の関連コンテンツを編集してください。

Microsoft Defenderでデプロイされたコンテンツを編集した場合、更新されたコンテンツをソース管理リポジトリにエクスポートしてください。 そうでなければ、次にリポジトリからコンテンツがデプロイされた際に変更が上書きされる可能性があります。

コンテンツを削除する

リポジトリからコンテンツを削除しても、ISOCワークスペースからは削除されません。

リポジトリを通じて展開されたコンテンツを削除するには:

  1. リポジトリからコンテンツを削除してください。

  2. Defenderポータル内のMicrosoft Sentinelから対応するコンテンツを削除してください。

ソース名でフィルタリングすることで、リポジトリから配布されたコンテンツを特定できます。

リポジトリのソース名でフィルタリングされた分析ルールのスクリーンショット。

リポジトリ接続を削除する

リポジトリ接続を解除すると、今後のコンテンツ展開が停止します。 以前にデプロイされたコンテンツはISOCワークスペースに残ります。

Bicepファイルを使用するには、リポジトリ接続が2024年11月1日より新しいものでなければなりません。 古い接続を削除して再作成し、更新してください。

リポジトリ接続を削除するには:

  1. Microsoft Defender ポータルにサインインします。

  2. Microsoft Sentinel>コンテンツ管理>リポジトリを選択します。

  3. 削除したい接続を選択してください。

  4. を選択して、を削除します。

  5. [はい] を選択して、削除を確認します。

接続を解除した後も、以前に接続を通じて展開されたコンテンツはISOCワークスペースに残ります。 接続を解除した後に追加されたコンテンツはデプロイされません。

接続を解除した際にエラーが発生した場合は、ソース管理リポジトリを確認し、関連するGitHubワークフローやAzure DevOpsパイプラインが削除されているか確認してください。

GitHub リポジトリからMicrosoft Sentinel アプリを削除する

GitHubリポジトリからMicrosoft Sentinelアプリを削除する前に、Microsoft Defenderのリポジトリページから関連するすべての接続を削除してください。

各Microsoft Sentinelアプリのインストールには、接続の追加・削除時に使われる固有のIDがあります。 IDが欠落または変更されている場合は、リポジトリページから接続を削除し、ワークフローをGitHubリポジトリから手動で削除して、今後のコンテンツ展開を防ぎましょう。