Microsoft Azure MDM(モバイル デバイス管理)Intune ログを収集する
このドキュメントでは、API または Blob Storage を使用して Microsoft Intune ログを Google Security Operations に取り込む方法について説明します。パーサーはログを処理し、統合データモデル(UDM)に変換します。フィールドを抽出し、UDM 属性にマッピングし、さまざまなアクティビティ タイプ(作成、削除、パッチ、アクション)を処理して、デバイス情報、ユーザーの詳細、セキュリティ結果などの追加コンテキストでデータを拡充します。また、「Reprovision CloudPCModel」オペレーションの特定のロジックを実行し、さまざまな ID シナリオを処理します。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス
- アクティブな Azure テナント
- Azure への特権アクセス
- Microsoft Intune への特権アクセス
Azure Storage を使用してログ取り込みを構成する
このセクションでは、Azure Storage からのログ取り込みを構成するプロセスについて説明します。これにより、Microsoft Intune からログを効果的に収集して分析できます。
Azure Storage アカウントを構成する
- Azure コンソールで、[ストレージ アカウント] を検索します。
- [作成] をクリックします。
- 次の入力パラメータの値を指定します。
- Subscription: サブスクリプションを選択します。
- リソース グループ: リソース グループを選択します。
- リージョン: リージョンを選択します。
- パフォーマンス: 選択したパフォーマンスを選択します(標準が推奨されます)。
- 冗長性: 選択した冗長性(GRS または LRS を推奨)を選択します。
- ストレージ アカウント名: 新しいストレージ アカウントの名前を入力します。
- [Review + create] をクリックします。
- アカウントの概要を確認して、[作成] をクリックします。
- [ストレージ アカウントの概要] ページで、[セキュリティとネットワーキング] のサブメニュー [アクセスキー] を選択します。
- [key1] または [key2] の横にある [Show] をクリックします。
- [クリップボードにコピー] をクリックして、キーをコピーします。
- キーは、後で参照できるように安全な場所に保存してください。
- [ストレージ アカウントの概要] ページで、[設定] のサブメニュー [エンドポイント] を選択します。
- [クリップボードにコピー] をクリックして、Blob サービス エンドポイント URL(
https://<storageaccountname>.blob.core.windows.net
など)をコピーします。 - エンドポイント URL は、後で参照できるように安全な場所に保存します。
Microsoft Intune ログのログ エクスポートを構成する
- Microsoft Intune ウェブ UI にログインします。
- [Reports] > [Diagnostic settings] に移動します。
- [+ 診断設定を追加] をクリックします。
- 次の構成の詳細を指定します。
- 診断設定名: わかりやすい名前を入力します(例:
Intune logs to Google SecOps
)。 AuditLogs
、OperationalLogs
、DeviceComplianceOrg
、Devices
の診断設定を選択します。- 移行先として [ストレージ アカウントにアーカイブする] チェックボックスをオンにします。
- サブスクリプションとストレージ アカウントを指定します。
- 診断設定名: わかりやすい名前を入力します(例:
- [保存] をクリックします。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード]
- [Content Hub] > [Content Packs]
[SIEM 設定] > [フィード] でフィードを設定する
フィードを構成する手順は次のとおりです。
- [SIEM 設定] > [フィード] に移動します。
- [Add New Feed] をクリックします。
- 次のページで [単一のフィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例:
Azure Storage Audit Logs
)。 - [ソースタイプ] で [Microsoft Azure Blob Storage] を選択します。
- [ログタイプ] として [Azure Storage Audit] を選択します。
- [次へ] をクリックします。
次の入力パラメータの値を指定します。
Azure URI: BLOB エンドポイント URL。
ENDPOINT_URL/BLOB_NAME
次のように置き換えます。
ENDPOINT_URL
: BLOB エンドポイントの URL。(https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
: blob の名前。(<logname>-logs
など)
URI is a: ログストリームの構成(単一ファイル | ディレクトリ | サブディレクトリを含むディレクトリ)に応じて URI_TYPE を選択します。
Source deletion options: 必要に応じて削除オプションを選択します。
- 共有キー: Azure Blob Storage へのアクセスキー。
[次へ] をクリックします。
[Finalize] 画面で新しいフィードの設定を確認し、[送信] をクリックします。
コンテンツ ハブからフィードを設定する
次のフィールドに値を指定します。
URI is a: ログストリームの構成(単一ファイル | ディレクトリ | サブディレクトリを含むディレクトリ)に応じて URI_TYPE を選択します。
- Source deletion options: 必要に応じて削除オプションを選択します。
共有キー: Azure Blob Storage へのアクセスキー。
詳細オプション
- フィード名: フィードを識別する事前入力された値。
- ソースタイプ: Google SecOps にログを収集するために使用される方法。
- アセットの名前空間: フィードに関連付けられた名前空間。
- Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
API を使用してログ取り込みを構成する
このセクションでは、API ベースのログ取り込みを有効にするために Azure Active Directory 内でアプリケーションを設定する最初の手順について詳しく説明します。
Azure AD でアプリを構成する
- Azure Portal にログインします。
- 省略可: 複数のテナントにアクセスできる場合は、上部のメニューの [ディレクトリとサブスクリプション] を使用して、正しいテナントに切り替えます。
- [Azure Active Directory] を検索して選択します。
- [Manage> App registrations> New registration] に移動します。
- 次の構成の詳細を指定します。
- アプリケーションの表示名を入力します。
- アプリケーションにアクセスできるユーザーを指定します。
- 省略可: [リダイレクト URI] には何も入力しないでください。
- [Register] をクリックします。
- [概要] 画面から [アプリケーション(クライアント)ID] と [ディレクトリ(テナント)ID] をコピーして保存します。
クライアント シークレットを構成する
- [アプリの登録] で、新しいアプリケーションを選択します。
- [管理] > [証明書とシークレット] > [クライアント シークレット] > [新しいクライアント シークレット] に移動します。
- クライアント シークレットの名前を追加します。
- シークレットの有効期限を 2 年にするか、カスタム期間を指定します。
- [追加] をクリックします。
- [Secret Value] をコピーして保存します。
アプリの権限を構成する
- [アプリの登録] で、新しいアプリケーションを選択します。
- [Manage> API Permissions> Add a permission] に移動します。
- [Microsoft Graph] を選択します。
- 次のアプリケーションの権限を追加します。
- DeviceManagementApps.Read.All
- DeviceManagementConfiguration.Read.All
- DeviceManagementManagedDevices.Read.All
- DeviceManagementRBAC.Read.All
- DeviceManagementServiceConfig.Read.All
- AuditLog.Read.All
- Device.Read.All
- [権限を追加] をクリックします。
Microsoft Intune のログを取り込むように Google SecOps でフィードを構成する
- [SIEM 設定] > [フィード] に移動します。
- [Add New] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例: Microsoft Intune Logs)。
- [ソースタイプ] として [サードパーティ API] を選択します。
- [ログタイプ] として [Microsoft Intune] を選択します。
- [次へ] をクリックします。
- 次の入力パラメータの値を指定します。
- OAuth クライアント ID: 先ほどコピーしたアプリケーション ID を入力します。
- OAuth クライアント シークレット: 前の手順で作成したシークレット値を入力します。
- テナント ID: 先ほどコピーしたディレクトリ ID を入力します。
- アセットの名前空間: [アセットの名前空間](/chronicle/docs/investigation/asset-namespaces)。
- Ingestion labels: このフィードのイベントに適用されるラベル。
- [次へ] をクリックします。
- [Finalize] 画面でフィードの設定を確認し、[Submit] をクリックします。
UDM マッピング テーブル
ログフィールド | UDM マッピング | ロジック |
---|---|---|
AADTenantId |
event.idm.read_only_udm.additional.fields.value.string_value |
未加工ログの properties.AADTenantId の値は、この UDM フィールドにマッピングされます。キー「AADTenantId」のラベルが作成されます。 |
activityDateTime |
event.idm.read_only_udm.metadata.event_timestamp |
activityDateTime フィールドが解析され、年、月、日、時、分、秒、タイムゾーンが抽出されます。抽出されたこれらのフィールドは、event_timestamp の構築に使用されます。 |
activityType |
event.idm.read_only_udm.metadata.product_event_type |
UDM に直接マッピングされます。 |
actor.applicationDisplayName |
event.idm.read_only_udm.principal.application |
UDM に直接マッピングされます。 |
actor.userId |
event.idm.read_only_udm.principal.user.product_object_id |
UDM に直接マッピングされます。 |
actor.userPrincipalName |
event.idm.read_only_udm.principal.user.userid |
UDM に直接マッピングされます。 |
category |
event.idm.read_only_udm.additional.fields.value.string_value |
未加工ログの category の値がこの UDM フィールドにマッピングされます。キー「category」のラベルが作成されます。 |
event.idm.read_only_udm.metadata.event_type |
パーサーによって activityOperationType などのフィールドに基づいて取得されます。可能な値は USER_RESOURCE_UPDATE_CONTENT 、USER_RESOURCE_DELETION 、USER_RESOURCE_CREATION 、USER_UNCATEGORIZED 、STATUS_UPDATE 、GENERIC_EVENT です。「AZURE_MDM_INTUNE」にハードコードされています。「AZURE MDM INTUNE」にハードコードされています。「Microsoft」にハードコードされています。派生。値は、「Device ID:」と properties.DeviceId の値を連結した文字列に設定されます。未加工ログの properties.SerialNumber の値がこの UDM フィールドにマッピングされます。未加工ログの properties.DeviceName の値がこの UDM フィールドにマッピングされます。DeviceManagementAPIName 、software1_name 、software2.name 、software3.name 、software4.name などの複数のフィールドに基づいて、パーサーによって導出されます。複数のソフトウェア エントリを作成できます。未加工ログの properties.DeviceName の値がこの UDM フィールドにマッピングされます。properties.OS フィールドに基づいてパーサーによって取得されます。有効な値は「WINDOWS」、「LINUX」、「MAC」です。未加工ログの properties.OSVersion の値がこの UDM フィールドにマッピングされます。resources 配列の modifiedProperties 配列内の displayName フィールドの値は、この UDM フィールドにマッピングされます。resources 配列の modifiedProperties 配列内の newValue フィールドの値は、この UDM フィールドにマッピングされます。未加工ログの properties.UserEmail 、user_identity 、または ident.UPN.0.Identity の値がこの UDM フィールドにマッピングされます。未加工ログの properties.UserName の値がこの UDM フィールドにマッピングされます。鍵は OS_loc または OSDescription にできます。未加工ログの properties.OS_loc または properties.OSDescription の値がこの UDM フィールドにマッピングされます。resources.0.displayName や activityType などの複数のフィールドに基づいてパーサーによって導出されます。activityResult フィールドと event_type フィールドに基づいてパーサーによって取得されます。有効な値は ACTIVE 、PENDING_DECOMISSION 、DECOMISSIONED 、DEPLOYMENT_STATUS_UNSPECIFIED です。「MICROSOFT_AZURE」にハードコードされています。未加工ログの resources.0.resourceId の値がこの UDM フィールドにマッピングされます。未加工ログの resources.0.type の値がこの UDM フィールドにマッピングされます。resources.0.type や activityType などの複数のフィールドに基づいてパーサーによって導出されます。有効な値は DEVICE 、ACCESS_POLICY 、TASK です。未加工ログの upn_identity の値がこの UDM フィールドにマッピングされます。未加工ログの user_identity または user_id の値がこの UDM フィールドにマッピングされます。 |
|
properties.BatchId |
event.idm.read_only_udm.metadata.product_log_id |
UDM に直接マッピングされます。 |
resources.0.resourceId |
event.idm.read_only_udm.target.resource.id |
UDM に直接マッピングされます。 |
resources.0.type |
event.idm.read_only_udm.target.resource.name |
UDM に直接マッピングされます。 |
tenantId |
event.idm.read_only_udm.additional.fields.value.string_value |
未加工ログの tenantId の値がこの UDM フィールドにマッピングされます。キー「tenantId」のラベルが作成されます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。