Zscaler Internet Access のログを収集する

以下でサポートされています。

このドキュメントでは、Google Security Operations フィードを設定して Zscaler Internet Access のログをエクスポートする方法と、ログフィールドが Google SecOps 統合データモデル(UDM)フィールドにマッピングされる方法について説明します。

詳細については、Google SecOps へのデータの取り込みの概要をご覧ください。

一般的なデプロイは、Zscaler Internet Access と、Google SecOps にログを送信するように構成された Google SecOps Webhook フィードで構成されます。お客様のデプロイはそれぞれ異なり、より複雑になる場合もあります。

デプロイには次のコンポーネントが含まれます。

  • Zscaler Internet Access: ログを収集するプラットフォーム。

  • Google SecOps フィード: Zscaler Internet Access からログを取得して Google SecOps に書き込む Google SecOps フィード。

  • Google SecOps: ログを保持して分析します。

取り込みラベルによって、未加工のログデータを構造化 UDM 形式に正規化するパーサーが識別されます。 このドキュメントの情報は、取り込みラベル ZSCALER_INTERNET_ACCESS が付加されたパーサーに適用されます。

始める前に

次の前提条件を満たしていることを確認します。

  • Zscaler Internet Access コンソールへのアクセス権。詳細については、インターネットと SaaS への安全なアクセス ZIA のヘルプをご覧ください。
  • Zscaler Internet Access 2024 以降
  • デプロイ アーキテクチャ内のすべてのシステムが、UTC タイムゾーンで構成されている。
  • Google Security Operations でフィードの設定を完了するために必要な API キー。詳細については、API キーの設定をご覧ください。

フィードを設定する

Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。

  • [SIEM 設定] > [フィード]
  • [Content Hub] > [Content Packs]

[SIEM 設定] > [フィード] でフィードを設定する

このプロダクト ファミリー内で異なるログタイプに対して複数のフィードを構成するには、プロダクトごとにフィードを構成するをご覧ください。

1 つのフィードを設定する手順は次のとおりです。

  1. [SIEM 設定] > [フィード] に移動します。
  2. [Add New Feed] をクリックします。
  3. 次のページで、[単一フィードを設定] をクリックします。
  4. [フィード名] フィールドに、フィードの名前を入力します(例: Zscaler Internet Access Logs)。
  5. [ソースの種類] として [Webhook] を選択します。
  6. [ログタイプ] として [Zscaler Internet Access Audit Logs] を選択します。
  7. [次へ] をクリックします。
  8. 省略可: 次の入力パラメータの値を入力します。
    1. Split delimiter: ログ行を区切るために使用される区切り文字。区切り文字を使用しない場合は空白のままにします。
    2. アセットの名前空間: アセットの名前空間。
    3. Ingestion labels: このフィードのイベントに適用されるラベル。
  9. [次へ] をクリックします。
  10. 新しいフィードの設定を確認し、[送信] をクリックします。
  11. [シークレット キーを生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。

コンテンツ ハブからフィードを設定する

次のフィールドに値を指定します。

  • Split delimiter: ログ行を区切るために使用される区切り文字(\n など)。

詳細オプション

  • フィード名: フィードを識別する事前入力された値。
  • ソースタイプ: Google SecOps にログを収集するために使用される方法。
  • アセットの名前空間: アセットの名前空間
  • Ingestion labels: このフィードのイベントに適用されるラベル。
  • [次へ] をクリックします。
  • [Finalize] 画面でフィードの設定を確認し、[Submit] をクリックします。
  • [秘密鍵を生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。

Zscaler Internet Access を設定する

  1. Zscaler Internet Access コンソールで、[管理] > [Nanolog ストリーミング サービス] > [クラウド NSS フィード] をクリックし、[クラウド NSS フィードを追加] をクリックします。
  2. [クラウド NSS フィードを追加] ウィンドウが表示されます。[クラウド NSS フィードを追加] ウィンドウで詳細を入力します。
  3. [フィード名] フィールドにフィードの名前を入力します。
  4. [NSS タイプ] で [NSS for Web] を選択します。
  5. [ステータス] リストからステータスを選択して、NSS フィードを有効または無効にします。
  6. [SIEM レート] プルダウンの値は [無制限] のままにします。ライセンスなどの制約により出力ストリームを抑制するには、値を変更します。
  7. [SIEM タイプ] リストで [その他] を選択します。
  8. [OAuth 2.0 認証] リストで [無効] を選択します。
  9. 最大バッチサイズで、個々の HTTP リクエスト ペイロードのサイズ上限を SIEM のベスト プラクティスに入力します。たとえば、512 KB などです。
  10. Chronicle API エンドポイントの HTTPS URL を次の形式で API URL に入力します。

      https://<CHRONICLE_REGION>-chronicle.googleapis.com/v1alpha/projects/<GOOGLE_PROJECT_NUMBER>/locations/<LOCATION>/instances/<CUSTOMER_ID>/feeds/<FEED_ID>:importPushLogs
    
    • CHRONICLE_REGION: Chronicle インスタンスがホストされているリージョン。たとえば US。
    • GOOGLE_PROJECT_NUMBER: BYOP プロジェクト番号。これは C4 から取得します。
    • LOCATION: Chronicle のリージョン。たとえば US。
    • CUSTOMER_ID: Chronicle のお客様 ID。C4 から取得します。
    • FEED_ID: 新しいウェブフックの作成時にフィード UI に表示されるフィード ID
    • API URL の例:

      https://us-chronicle.googleapis.com/v1alpha/projects/12345678910/locations/US/instances/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/feeds/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy:importPushLogs
      
  11. [HTTP ヘッダーを追加] をクリックし、次の形式で HTTP ヘッダーを追加します。

    • Header 1: Key1: X-goog-api-keyValue1: Google Cloud BYOP の API 認証情報で生成された API キー。
    • Header 2: Key2: X-Webhook-Access-KeyValue2: ウェブフックの [SECRET KEY] で生成された API シークレット キー。
  12. [ログタイプ] リストで [Admin Audit Logs] を選択します。

  13. [フィード出力タイプ] リストで [JSON] を選択します。

  14. [Feed Escape Character] を , \ " に設定します。

  15. フィード出力形式に新しいフィールドを追加するには、[フィード出力タイプ] リストで [カスタム] を選択します。

  16. [フィード出力形式] をコピーして貼り付け、新しいフィールドを追加します。キー名が実際のフィールド名と一致していることを確認します。

  17. デフォルトの [フィード出力形式] は次のとおりです。

      \{ "sourcetype" : "zscalernss-audit", "event" :\{"time":"%s{time}","recordid":"%d{recordid}","action":"%s{action}","category":"%s{category}","subcategory":"%s{subcategory}","resource":"%s{resource}","interface":"%s{interface}","adminid":"%s{adminid}","clientip":"%s{clientip}","result":"%s{result}","errorcode":"%s{errorcode}","auditlogtype":"%s{auditlogtype}","preaction":%s{preaction},"postaction":%s{postaction}\}\}
    
  18. [タイムゾーン] リストで、出力ファイルの [時間] フィールドのタイムゾーンを選択します。デフォルトでは、タイムゾーンは組織のタイムゾーンに設定されています。

  19. 構成された設定を確認します。

  20. [保存] をクリックして接続をテストします。接続に成功すると、緑色のチェックマークと [Test Connectivity Successful: OK (200)] というメッセージが表示されます。

Google SecOps フィードの詳細については、Google Security Operations フィードのドキュメントをご覧ください。各フィードタイプの要件については、タイプ別のフィード構成をご覧ください。

フィードの作成時に問題が発生した場合は、Google Security Operations サポートにお問い合わせください。

サポートされている Zscaler Internet Access のログ形式

Zscaler Internet Access パーサーは、JSON 形式のログをサポートしています。

サポートされている Zscaler Internet Access のログの例

  • JSON

    {
      "sourcetype": "zscalernss-audit",
      "event": {
        "time": "Wed May 29 17:45:03 2024",
        "recordid": "6095",
        "action": "UPDATE",
        "category": "ACCESS_CONTROL_RESOURCE",
        "subcategory": "URL_CATEGORY",
        "resource": "Custom SSL Bypass",
        "interface": "UI",
        "adminid": "abc@xyz.com",
        "clientip": "198.51.100.1",
        "result": "SUCCESS",
        "errorcode": "None",
        "auditlogtype": "ZIA",
        "preaction": "{"id":{"val":130%2c"mask":255%2c"parent":"CUSTOM_SUPERCATEGORY"%2c"deprecated":false%2c"backendName":"custom_03"%2c"name":"CUSTOM_03"%2c"userConfiguredName":""}%2c"configuredName":"Custom%20SSL%20Bypass"%2c"superCategory":"USER_DEFINED"%2c"keywords":[]%2c"keywordsRetainingParentCategory":[]%2c"customUrlsToAdd":[]%2c"customUrlsToDelete":[]%2c"urlsRetainingParentCategoryToAdd":[]%2c"urlsRetainingParentCategoryToDelete":[]%2c"customIpRangesToAdd":[]%2c"customIpRangesToDelete":[]%2c"ipRangesRetainingParentCategoryToAdd":[]%2c"ipRangesRetainingParentCategoryToDelete":[]%2c"customCategory":true%2c"editable":true%2c"description":"https: //help.zscaler.com/zia/url-format-guidelines"%2c"type":"URL_CATEGORY"%2c"customUrlsCount":1%2c"urlsRetainingParentCategoryCount":60%2c"customIpRangesCount":0%2c"ipRangesRetainingParentCategoryCount":0%2c"urlsToAdd":[]%2c"urlsToDelete":[]%2c"dbCategorizedUrlsToAdd":[]%2c"dbCategorizedUrlsToDelete":[]}","postaction":"{"id":{"val":130%2c"mask":255%2c"parent":"CUSTOM_SUPERCATEGORY"%2c"deprecated":false%2c"backendName":"custom_03"%2c"name":"CUSTOM_03"%2c"userConfiguredName":""}%2c"configuredName":"Custom%20SSL%20Bypass"%2c"superCategory":"USER_DEFINED"%2c"customUrlsToAdd":[]%2c"customUrlsToDelete":[]%2c"urlsRetainingParentCategoryToAdd":["webcast.temoinproduction.com"]%2c"urlsRetainingParentCategoryToDelete":[]%2c"customIpRangesToAdd":[]%2c"customIpRangesToDelete":[]%2c"ipRangesRetainingParentCategoryToAdd":[]%2c"ipRangesRetainingParentCategoryToDelete":[]%2c"customCategory":true%2c"editable":true%2c"description":"https://help.zscaler.com/zia/url-format-guidelines"%2c"type":"URL_CATEGORY"%2c"customUrlsCount":1%2c"urlsRetainingParentCategoryCount":61%2c"customIpRangesCount":0%2c"ipRangesRetainingParentCategoryCount":0%2c"urlsToAdd":[]%2c"urlsToDelete":[]%2c"dbCategorizedUrlsToAdd":[]%2c"dbCategorizedUrlsToDelete":[]}"}
    }
    

フィールド マッピング リファレンス

次の表に、ZSCALER_INTERNET_ACCESS ログタイプのログ フィールドと、対応する UDM フィールドを示します。

Log field UDM mapping Logic
metadata.event_type The metadata.event_type UDM field is set to STATUS_UPDATE.
metadata.product_name The metadata.product_name UDM field is set to Admin Audit.
metadata.vendor_name The metadata.vendor_name UDM field is set to Zscaler.
sourcetype additional.fields[sourcetype]
time metadata.event_timestamp
recordid metadata.product_log_id
action security_result.action_details
category target.security_result.category_details
subcategory target.security_result.category_details
resource target.resource.name
interface principal.resource.attribute.labels[interface]
adminid principal.user.userid
clientip principal.ip
security_result.action If the event.result log field value is equal to SUCCESS, then the security_result.action UDM field is set to ALLOW.

Else, if the event.result log field value is equal to FAILURE, then the security_result.action UDM field is set to BLOCK.
errorcode security_result.summary
auditlogtype additional.fields[auditlogtype]
preaction principal.resource.attribute.labels Iterate through preaction object: The preaction object key is mapped to the principal.resource.attribute.labels.key UDM field and preaction object value is mapped to the principal.resource.attribute.labels.value UDM field.
postaction principal.resource.attribute.labels Iterate through postaction object: The postaction object key is mapped to the principal.resource.attribute.labels.key UDM field and postaction object value is mapped to the principal.resource.attribute.labels.value UDM field.

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。