Microsoft Azure Key Vault ロギングログを収集する
このドキュメントでは、Google Security Operations フィードを設定して Azure Key Vault のロギングログを収集する方法について説明します。
詳細については、Google SecOps へのデータの取り込みをご覧ください。
取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。このドキュメントの情報は、取り込みラベル AZURE_KEYVAULT_AUDI が付加されたパーサーに適用されます。
始める前に
次の前提条件を満たしていることを確認します。
- ログインできる Azure サブスクリプション
- Azure の Azure Key Vault 環境(テナント)
- グローバル管理者または Azure Key Vault 管理者のロール
- ログを保存する Azure ストレージ アカウント
ストレージ アカウントを構成する
- Azure ポータルにログインします。
- Azure コンソールで、[ストレージ アカウント] を検索します。
ログの取得元となるストレージ アカウントを選択し、[アクセスキー] を選択します。新しいストレージ アカウントを作成する手順は次のとおりです。
- [作成] をクリックします。
- 新しいストレージ アカウントの名前を入力します。
アカウントのサブスクリプション、リソース グループ、リージョン、パフォーマンス、冗長性を選択します。パフォーマンスを standard、冗長性を GRS または LRS に設定することをおすすめします。
[Review + create] をクリックします。
アカウントの概要を確認して、[作成] をクリックします。
[キーを表示] をクリックし、ストレージ アカウントの共有キーをメモします。
[エンドポイント] を選択し、Blob サービスのエンドポイントをメモしておきます。
ストレージ アカウントの作成の詳細については、Microsoft ドキュメントの Azure ストレージ アカウントを作成するをご覧ください。
Azure Key Vault のロギングを構成する
- Azure ポータルで、[Key vaults] に移動し、ロギング用に構成するキー コンテナーを選択します。
- [モニタリング] セクションで、[診断設定] を選択します。
- [診断設定を追加] を選択します。[診断設定] ウィンドウには、診断ログの設定が表示されます。
- [診断設定名] フィールドに、診断設定の名前を指定します。
- [カテゴリ グループ] セクションで、[監査] チェックボックスをオンにします。
[保持期間(日数)] フィールドに、組織のポリシーに準拠したログ保持値を指定します。Google SecOps では、ログの保持期間を少なくとも 1 日にすることを推奨しています。
Azure Key Vault のロギングログは、ストレージ アカウントに保存することも、Event Hubs にストリーミングすることもできます。Google SecOps は、ストレージ アカウントを使用したログ収集をサポートしています。
ストレージ アカウントにアーカイブする
- ログをストレージ アカウントに保存するには、[診断設定] ウィンドウで、[ストレージ アカウントにアーカイブする] チェックボックスをオンにします。
- [サブスクリプション] リストで、既存のサブスクリプションを選択します。
- [ストレージ アカウント] リストで、既存のストレージ アカウントを選択します。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード] > [新しいフィードを追加]
- Content Hub > Content Packs > Get Started
Azure Key Vault ロギング フィードの設定方法
- [Azure Platform] パックをクリックします。
- [Azure Key Vault ロギング] ログタイプを見つけて、[新しいフィードを追加] をクリックします。
次のフィールドに値を指定します。
- Source Type: Microsoft Azure Blob Storage V2。
- Azure URI: 先ほど取得した Blob Service エンドポイントと、そのストレージ アカウントのコンテナ名のいずれかを指定します。例:
https://xyz.blob.core.windows.net/abc/ - ソース削除オプション: ソース削除オプションを指定します。
- ファイルの最大経過日数: 指定した日数以内に変更されたファイルを含めます。デフォルトは 180 日です。
- キー: 前の手順で取得した共有キーを指定します。
詳細オプション
- フィード名: フィードを識別する事前入力された値。
- アセットの名前空間: フィードに関連付けられた名前空間。
- Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
[フィードを作成] をクリックします。
このプロダクト ファミリー内のさまざまなログタイプに対して複数のフィードを構成する方法については、プロダクト別にフィードを構成するをご覧ください。
Google SecOps フィードの詳細については、Google SecOps フィードのドキュメントをご覧ください。
各フィードタイプの要件については、タイプ別のフィード構成をご覧ください。
サポートされている Microsoft Azure Key Vault ロギングのサンプルログ
Azure Key Vault 監査
{ "time": "2024-02-01T10:34:54.5732801Z", "category": "AuditEvent", "operationName": "Authentication", "resultType": "Success", "correlationId": "00000000-0000-0000-0000-000000000000", "callerIpAddress": "127.0.0.1", "identity": {}, "properties": { "clientInfo": "azsdk-net-Security.KeyVault.Secrets/4.5.0 (.NET Framework 4.8.4645.0; Microsoft Windows 10.0.20348 )", "httpStatusCode": 401, "requestUri": "https://example-vault.vault.azure.net/secrets/?api-version=7.4", "tlsVersion": "TLS1_3" }, "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/EXAMPLE-RG/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/EXAMPLE-VAULT", "operationVersion": "7.4", "resultSignature": "Unauthorized", "durationMs": "17" }Azure Diagnostics
{ "TenantId": "00000000-0000-0000-0000-000000000000", "TimeGenerated": "2025-01-07T20:00:00.0483028Z", "ResourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/EXAMPLE-RG/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/EXAMPLE-VAULT", "Category": "AuditEvent", "ResourceGroup": "EXAMPLE-RG", "SubscriptionId": "00000000-0000-0000-0000-000000000000", "ResourceProvider": "MICROSOFT.KEYVAULT", "Resource": "EXAMPLE-VAULT", "ResourceType": "VAULTS", "OperationName": "SecretGet", "ResultType": "Success", "CorrelationId": "00000000-0000-0000-0000-000000000000", "ResultDescription": "", "requestUri_s": "https://example-vault.vault.azure.net/secrets/example-secret/?api-version=7.3", "DurationMs": 16, "CallerIPAddress": "127.0.0.1", "OperationVersion": "7.3", "ResultSignature": "OK", "id_s": "https://example-vault.vault.azure.net/secrets/example-secret/00000000000000000000000000000000", "clientInfo_s": "azsdk-net-Security.KeyVault.Secrets/4.3.0 (.NET 6.0.35; Microsoft Windows 10.0.14393)", "httpStatusCode_d": 200, "identity_claim_appid_g": "00000000-0000-0000-0000-000000000000", "isAccessPolicyMatch_b": true, "identity_claim_oid_g": "00000000-0000-0000-0000-000000000000", "identity_claim_appidacr_s": "2", "identity_claim_xms_az_nwperimid_s": "[]", "identity_claim_idtyp_s": "app", "tlsVersion_s": "TLS1_2", "Type": "AzureDiagnostics", "_ResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/example-rg/providers/microsoft.keyvault/vaults/example-vault" }Azure Resource Graph
{ "value": [ { "TenantId": "00000000-0000-0000-0000-000000000000", "TimeGenerated": "2024-11-02T09:12:25.0852453Z", "ResourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/EXAMPLE-RG/PROVIDERS/MICROSOFT.KEYVAULT/VAULTS/EXAMPLE-VAULT", "Category": "AuditEvent", "ResourceGroup": "EXAMPLE-RG", "SubscriptionId": "00000000-0000-0000-0000-000000000000", "ResourceProvider": "MICROSOFT.KEYVAULT", "Resource": "EXAMPLE-VAULT", "ResourceType": "VAULTS", "OperationName": "VaultGet", "ResultType": "Success", "CorrelationId": "00000000-0000-0000-0000-000000000000", "ResultDescription": "", "requestUri_s": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/example-rg/providers/Microsoft.KeyVault/vaults/example-vault?api-version=2023-07-01&MaskCMKEnabledProperties=true", "DurationMs": 30, "CallerIPAddress": "127.0.0.1", "OperationVersion": "2023-07-01", "ResultSignature": "OK", "id_s": "https://example-vault.vault.azure.net/", "clientInfo_s": "AzureResourceGraph.IngestionWorkerService.global/1.24.1.672", "httpStatusCode_d": 200, "identity_claim_appid_g": "00000000-0000-0000-0000-000000000000", "identity_claim_http_schemas_microsoft_com_identity_claims_objectidentifier_g": "00000000-0000-0000-0000-000000000000", "properties_sku_Family_s": "A", "properties_sku_Name_s": "standard", "properties_tenantId_g": "00000000-0000-0000-0000-000000000000", "properties_enabledForDeployment_b": false, "properties_enabledForTemplateDeployment_b": false, "properties_enabledForDiskEncryption_b": false, "properties_enableSoftDelete_b": true, "properties_enableRbacAuthorization_b": false, "properties_enablePurgeProtection_b": true, "Type": "AzureDiagnostics", "_ResourceId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/example-rg/providers/microsoft.keyvault/vaults/example-vault" } ] }
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。