Sentinel に Box のアクセス ログを取り込む
はじめに
Box のアクセスログを Sentinel に取り込んで、可視化や脅威分析ができるようにします。Box 用のデータ コネクタが準備されているので、そちらを使用します。
参考
取得できるログ
取得できるのは Enterprise Events で Box インスタンス内のすべてのユーザーとコンテンツに関するイベントフィードを提供します。
Box アプリの設定
まず以下を参考に Box API にアクセスするためのアプリを作成していきます。
Box の Developer コンソールを開き、[My Apps] ページ右上の [Create New App] をクリックします。※ 今まで一度も作成したことがない場合は次のページが表示されます。
[Custom App] をクリックします。
アプリの名前、目的などを入力し、[Next] をクリックします。
[Server Authentication (with JWT)] を選択し、[Create App] をクリックします。
アプリの画面が表示されるので [Configuration] タブにて、App Access Level を [App + Enterprise Access] に変更します。
Application Scopes を [Manage enterprise properties] のみに変更します。一度画面上部の [Save Changes] をクリックして保存します。
[Generate a Public/Private Keypair] をクリックし、秘密キーと公開キーを作成します。秘密キーを含む json ファイルがダウンロードされるので、適切な場所に保存します。
※ MFA が要求されます。管理者の MFA 有効でない場合、MFA の有効化を求められます。
[Authorization] タブに移動し、[Review and Submit] をクリックします。
説明などを記載し、[Submit] をクリックします。
管理者に承認のメールが送信されるので、[Review App Details] をクリックします。
Box Admin コンソールが開くので、アプリの詳細情報を確認し、[Authorize] をクリック、表示されるダイアログで [Authorize] をクリックします。
Box Admin コンソールの [Apps] > [Custom Apps Manager] タブで対象のアプリが Authorized / Enabled になっていることを確認します。
Box コネクタのデプロイ
次に Sentinel において Box コネクタをデプロイしていきます。まず事前準備として、Application Insights が接続する Log Analytics ワークスペースのリソース ID を取得します。対象の Log Analytics ワークスペースの [概要] ページから右上の [JSONビュー] をクリックし上部の [リソース ID] をコピーしておきます。
※ Azure Functions の実行ログの記録に使用するため、Sentinel と同じワークスペースである必要はありません。
Sentinel の画面で [コンテンツ ハブ] で Box を検索し、インストールします。
インストール完了後、[データ コネクタ] から Box のコネクタページを開きます。
コネクタ ページで Workspace ID と Primary Key をメモしておき、Option 1- の箇所を展開、[Deploy to Azure] をクリックします。
カスタム デプロイの画面が開きます。Azure Functions のデプロイ先を指定し、以下を入力し、[確認と作成] をクリック、[作成] をクリックしデプロイに進みます。
項目 | 入力値 |
---|---|
Box Config JSON | Box から取得した秘密キーを含む JSON テキスト |
Azure Sentinel Workspace Id | コネクタ ページでコピーした Workspace ID |
Azure Sentinel Shared Key | コネクタ ページでコピーした Primary Key |
App Insights Workspace Resource ID | App Insights 用に取得したリソース ID |
デプロイ完了後、作成した Azure Functions を開き AzureFunctionBox をクリックします。
タイマーで2 分に 1 回実行されるように設定されています。[呼び出し] タブをクリックし、実行結果が成功していることを確認します。
Sentinel に戻り、[ログ] にて "BoxEvents" で検索して、ログが出力されることを確認します。
必要に応じて Box 用の分析ルール テンプレートをデプロイします。
補足事項
-
Box の認証情報 (秘密キーを含む JSON テキスト) を Key Vault に格納することが可能です。
https://learn.microsoft.com/ja-jp/azure/app-service/app-service-key-vault-references?tabs=azure-cli -
Azure Functions でログインジェストに使用している API は Data Collector API であり、2026/11 にリタイアの予定です。将来的に Azure Functions の改修などの移行対応が必要です。
https://learn.microsoft.com/en-us/azure/azure-monitor/logs/data-collector-api?tabs=powershell
Discussion