Cloud Functions としてデプロイされた取り込みスクリプトを使用する

Google Security Operations では、Cloud Functions としてデプロイされることを目的とした、Python で記述された一連の取り込みスクリプトが提供されています。これらのスクリプトを使用すると、名前とログタイプで一覧表示された次のログソースからデータを取り込むことができます。

  • Armis Google Security Operations Integration
  • Aruba Central (ARUBA_CENTRAL)
  • Azure Event Hub (configurable log type)
  • Box (BOX)
  • Citrix Cloud audit logs (CITRIX_MONITOR)
  • Citrix session metadata (CITRIX_SESSION_METADATA)
  • Cloud Storage (configurable log type)
  • Duo Admin (DUO_ADMIN)
  • MISP (MISP_IOC)
  • OneLogin (ONELOGIN_SSO)
  • OneLogin user context (ONELOGIN_USER_CONTEXT)
  • Proofpoint (configurable log type)
  • Pub/Sub (configurable log type)
  • Slack audit logs (SLACK_AUDIT)
  • STIX/TAXII threat intelligence (STIX)
  • Tenable.io (TENABLE_IO)
  • Trend Micro Cloud App Security (configurable log type)
  • Trend Micro Vision One audit logs (TREND_MICRO_VISION_AUDIT)

このスクリプトは、Google セキュリティ オペレーションの GitHub リポジトリにあります。

既知の制限: これらのスクリプトが Cloud Functions などのステートレス環境で使用される場合、チェックポイント機能がないため、すべてのログを Google Security Operations に送信できない場合があります。Google Security Operations では、Python 3.9 ランタイムを使用してスクリプトをテストしています。

始める前に

Google セキュリティ運用の取り込みスクリプトを効果的に使用するためのコンテキストと背景情報を提供する、以下のリソースをご覧ください。

単一のログタイプのファイルを作成する

Google Security Operations GitHub の各サブディレクトリには、1 つの Google Security Operations ログタイプのデータを取り込むファイルが含まれています。このスクリプトは、単一のソースデバイスに接続し、Ingestion API を使用して未加工のログを Google Security Operations に送信します。各ログタイプは個別の Cloud Functions としてデプロイすることをおすすめします。Google Security Operations GitHub リポジトリのスクリプトにアクセスします。GitHub の各サブディレクトリには、取り込むログタイプに固有の次のファイルが含まれています。

  • main.py は、ログタイプに固有の取り込みスクリプトです。ソースデバイスに接続し、データを Google Security Operations に取り込みます。
  • .env.yml には、Python スクリプトに必要な構成が格納されます。これは、デプロイに固有のものです。このファイルを変更して、取り込みスクリプトに必要な構成パラメータを設定します。
  • README.md は、構成パラメータに関する情報を提供します。
  • Requirements.txt は、取り込みスクリプトに必要な依存関係を定義します。 また、common フォルダには、すべての取り込みスクリプトが依存するユーティリティ関数が含まれています。

次の手順に沿って、単一のログタイプのデータを取り込むファイルを作成します。

  1. Cloud Functions の関数のファイルを保存するデプロイ ディレクトリを作成します。 これには、デプロイに必要なすべてのファイルが含まれます。
  2. 選択したログタイプの GitHub サブディレクトリ(OneLogin ユーザー コンテキストなど)から、このデプロイ ディレクトリにすべてのファイルをコピーします。
  3. common フォルダとすべてのコンテンツをデプロイ ディレクトリにコピーします。
  4. ディレクトリの内容は次のようになります。

    one_login_user
    ├─common
    │  ├─__init__.py
    │  ├─auth.py
    │  ├─env_constants.py
    │  ├─ingest.py
    │  ├─status.py
    │  └─utils.py
    ├─env.yml
    ├─main.py
    └─requirements.txt
    

スクリプトを構成する

  1. Cloud Shell セッションを開始する
  2. Google Cloud Linux VM に SSH で接続します。Googleの ツールを使用して Linux VM に接続をご覧ください。
  3. 取り込みスクリプトをアップロードするには、 その他 > [アップロード] または [ダウンロード] をクリックして Cloud Shell間でフォルダやファイルを移動します。

    ファイルやフォルダは、ホーム ディレクトリでのみアップロードおよびダウンロードできます。Cloud Shell とローカル ワークステーションの間でファイルを転送するその他のオプションについては、[Cloud Shell からファイルとフォルダをアップロードおよびダウンロードする](/shell/docs/uploading-and-downloading-files#upload_and_download_files_and_folders) をご覧ください。

  4. 関数の .env.yml ファイルを編集して、必要な環境変数を入力します。次の表に、すべての取り込みスクリプトに共通するランタイム環境変数を示します。

    変数名 説明 必須 デフォルト シークレット
    CHRONICLE_CUSTOMER_ID Google セキュリティ運用のお客様 ID。 なし ×
    CHRONICLE_REGION Google Security Operations のリージョン。 us
    その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
    ×
    CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルの内容。 なし
    CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 × なし いいえ

  5. 各スクリプトには、そのスクリプトに固有の環境変数が必要です。各ログタイプに必要な環境変数の詳細については、ログタイプ別の構成パラメータをご覧ください。

Secret = Yes とマークされた環境変数は、Secret Manager でシークレットとして構成する必要があります。Secret Manager を使用する際のコストについては、Secret Manager の料金をご覧ください。

詳細な手順については、シークレットの作成とアクセスをご覧ください。

Secret Manager でシークレットを作成したら、シークレット リソース名を環境変数の値として使用します。たとえば、projects/{project_id}/secrets/{secret_id}/versions/{version_id} です。ここで、{project_id}{secret_id}{version_id} は環境に固有のものです。

スケジューラまたはトリガーを設定する

Pub/Sub を除くすべてのスクリプトは、ソースデバイスから定期的にデータを収集するように実装されています。時間の経過に伴うデータを取得するには、Cloud Scheduler を使用してトリガーを設定する必要があります。Pub/Sub の取り込みスクリプトは、Pub/Sub サブスクリプションを継続的にモニタリングします。詳細については、スケジュールに沿ってサービスを実行するPub/Sub を使用して Cloud Functions の関数をトリガーするをご覧ください。

Cloud Functions 関数のデプロイ

  1. Cloud Shell セッションを開始する
  2. SSH 経由で Google Cloud Linux VM に接続します。Googleの ツールを使用して Linux VM に接続をご覧ください。
  3. 取り込みスクリプトをコピーしたディレクトリに移動します。
  4. 次のコマンドを実行して、Cloud Functions をデプロイします。

    gcloud functions deploy <FUNCTION NAME> --service-account <SERVICE_ACCOUNT_EMAIL> --entry-point main --trigger-http --runtime python39 --env-vars-file .env.yml

    <FUNCTION_NAME> は、Cloud Functions に定義した名前に置き換えます。

    <SERVICE_ACCOUNT_EMAIL> は、Cloud Functions で使用するサービス アカウントのメールアドレスに置き換えます。

    ディレクトリをファイルのロケーションに変更しない場合は、--source オプションを使用してデプロイ スクリプトのロケーションを指定してください。

    Cloud Functions を実行するサービス アカウントには、Cloud Functions 起動元roles/cloudfunctions.invokerのロールと Secret Manager のシークレット アクセサーroles/secretmanager.secretAccessorのロールが必要です。

ランタイムログの表示

取り込みスクリプトは、ランタイム メッセージを stdout に出力します。Cloud Functions には、ログメッセージを表示するメカニズムが用意されています。詳細については、ランタイムログの表示に関する Cloud Functions の情報をご覧ください。

ログタイプ別の構成パラメータ

Armis Google セキュリティ運用の統合

このスクリプトは、アラート、アクティビティ、デバイス、脆弱性など、さまざまなタイプのイベントの Armis プラットフォームから API 呼び出しを使用してデータを収集します。収集されたデータは Google Security Operations に取り込まれ、対応するパーサーによって解析されます。

スクリプト フロー

スクリプトのフローは次のとおりです。

  1. 環境変数を確認します。

  2. スクリプトを Cloud Functions にデプロイします。

  3. 取り込みスクリプトを使用してデータを収集する。

  4. 収集したデータを Google Security Operations に取り込む。

  5. Google Security Operations の対応するパーサーによって、収集されたデータを解析する

スクリプトを使用してデータを収集し、Google Security Operations に取り込む

  1. 環境変数を確認します。

    変数 Description 必須 デフォルト シークレット
    CHRONICLE_CUSTOMER_ID Google セキュリティ運用のお客様 ID。 - ×
    CHRONICLE_REGION Google Security Operations のリージョン。 JP
    CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルの内容。 -
    CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。 × - いいえ
    POLL_INTERVAL 関数が追加のログデータを取得するために実行する頻度の間隔(分単位)。この期間は、Cloud Scheduler ジョブ間隔と同じにする必要があります。 はい 10 いいえ
    ARMIS_SERVER_URL Armis プラットフォームのサーバー URL。 はい - いいえ
    ARMIS_API_SECRET_KEY 認証に必要な秘密鍵。 はい - はい
    HTTPS_PROXY プロキシ サーバーの URL。 いいえ - ×
    CHRONICLE_DATA_TYPE Google Security Operations にデータを push する Google Security Operations のデータタイプ。 - いいえ
  2. ディレクトリを設定します。

    Cloud Functions のデプロイ用に新しいディレクトリを作成し、common ディレクトリと取り込みスクリプトの内容(armis)に追加します。

  3. 必要なランタイム環境変数を設定します。

    .env.yml ファイルに必要な環境変数を定義します。

  4. Secret を使用します。

    シークレットとしてマークされた環境変数は、Secret Manager でシークレットとして構成する必要があります。シークレットの作成方法については、シークレットを作成するをご覧ください。

    Secret Manager でシークレットを作成したら、シークレットのリソース名を環境変数の値として使用します。例:

    CHRONICLE_SERVICE_ACCOUNT: projects/{project_id}/secrets/{secret_id}/versions/{version_id}

  5. Namespace を構成します。

    CHRONICLE_NAMESPACE 環境変数を設定して Namespace を構成します。Google セキュリティ オペレーションのログは名前空間に取り込まれます。

  6. Cloud Functions をデプロイします。

    以前に作成したディレクトリ内から次のコマンドを実行して、Cloud Function をデプロイします。gcloud functions deploy <FUNCTION NAME> --gen2 --entry-point main --trigger-http --runtime python39 --env-vars-file .env.yml

  7. Cloud Functions のデフォルトの仕様。

    変数 デフォルト Description
    メモリ 256 MB なし
    タイムアウト 60 秒 なし
    リージョン us-central1 なし
    最小インスタンス数 0 なし
    最大インスタンス数 100 なし

    これらの変数の構成方法の詳細については、Cloud Functions の構成をご覧ください。

  8. 過去のデータを取得します。

    過去のデータを取得して引き続きリアルタイム データを収集するには:

    1. 履歴データをフェッチする POLL_INTERVAL 環境変数を分単位で構成します。
    2. Cloud Functions を構成した後に、Google Cloud CLI でコマンドを実行して、スケジューラを使用するか手動で、関数をトリガーします。

Aruba Central

このスクリプトは、Aruba Central プラットフォームから監査ログを取得し、ARUBA_CENTRAL ログタイプで Google セキュリティ オペレーションに取り込みます。ライブラリの使用方法については、pycentral Python SDK をご覧ください。

.env.yml ファイルに次の環境変数を定義します。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 10 いいえ
ARUBA_CLIENT_ID Aruba Central API ゲートウェイのクライアント ID。 なし いいえ
ARUBA_CLIENT_SECRET_SECRET_PATH Aruba Central API ゲートウェイのクライアント シークレット。 なし あり
ARUBA_USERNAME Aruba Central プラットフォームのユーザー名。 なし いいえ
ARUBA_PASSWORD_SECRET_PATH Aruba Central プラットフォームのパスワード。 なし あり
ARUBA_BASE_URL Aruba Central API ゲートウェイのベース URL。 なし いいえ
ARUBA_CUSTOMER_ID Aruba Central プラットフォームのお客様 ID。 なし いいえ

Azure Event Hub

他の取り込みスクリプトとは異なり、このスクリプトは Azure 関数を使用して Azure Event Hub からイベントを取得します。Azure 関数は、バケットに新しいイベントが追加されるたびにトリガーされ、各イベントが Google Security Operations に徐々に取り込まれます。

Azure 関数をデプロイする手順:

  1. リポジトリから Azure_eventhub_API_function_app.json という名前のデータコネクタ ファイルをダウンロードします。
  2. Microsoft Azure ポータルにログインします。
  3. 構成セクションの Microsoft の [Sentinel] > リストから ワークスペースを選択 > [データコネクタを選択] に移動して、次の操作を行います。
  4. ページの [インポート] ボタンを使って、手順 1 でダウンロードしたデータコネクタ ファイルをインポートします。
  5. [Azure にデプロイする] ボタンをクリックして関数をデプロイし、同じページの手順に沿って操作します。
  6. 優先する [サブスクリプション]、[リソース グループ]、[ロケーション] を選択し、必要な値を入力します。
  7. [レビュー + 作成] をクリックします。
  8. [作成] をクリックしてデプロイします。

Box

このスクリプトは、Box 内で発生したイベントの詳細を取得し、BOX ログタイプを使用して Google Security Operations に取り込みます。このデータから、Box 環境内のオブジェクトに対する CRUD オペレーションに関する分析情報が得られます。Box イベントの詳細については、Box イベント API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。Box クライアント ID、クライアント シークレット、サブジェクト ID の詳細については、クライアント認証情報の付与をご覧ください。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 5 ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
BOX_CLIENT_ID Box プラットフォームのクライアント ID は、Box デベロッパー コンソールで確認できます。 なし いいえ
BOX_CLIENT_SECRET 認証に使用される Box プラットフォームのクライアント シークレットを格納する Secret Manager のシークレットへのパス。 なし あり
BOX_SUBJECT_ID Box のユーザー ID または Enterprise ID。 なし ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

Citrix Cloud 監査ログ

このスクリプトは、Citrix Cloud 監査ログを収集し、CITRIX_MONITOR ログタイプで Google Security Operations に取り込みます。これらのログは、変更内容、変更者、変更日時などに関する情報を提供することで、Citrix Cloud 環境で行われたアクティビティの特定に役立ちます。詳細については、Citrix Cloud SystemLog API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。Citrix クライアント ID とクライアント シークレットについては、Citrix API スタートガイドをご覧ください。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
CITRIX_CLIENT_ID Citrix API クライアント ID。 なし いいえ
CITRIX_CLIENT_SECRET 認証に使用される Citrix API クライアント シークレットを格納する Secret Manager のシークレットへのパス。 なし あり
CITRIX_CUSTOMER_ID Citrix お客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを収集する頻度(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 30 いいえ
URL_DOMAIN Citrix Cloud Endpoint。 なし ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

Citrix セッションのメタデータ

このスクリプトは、Citrix 環境から Citrix セッションのメタデータを収集し、CITRIX_MONITOR ログタイプで Google セキュリティ オペレーションに取り込みます。このデータには、ユーザー ログインの詳細、セッション継続時間、セッション作成時間、セッション終了時刻、セッションに関連するその他のメタデータが含まれます。詳細については、Citrix Monitor Service API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。Citrix クライアント ID とクライアント シークレットについては、Citrix API スタートガイドをご覧ください。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
URL_DOMAIN Citrix URL ドメイン。 なし いいえ
CITRIX_CLIENT_ID Citrix クライアント ID。 なし いいえ
CITRIX_CLIENT_SECRET 認証に使用される Citrix クライアント シークレットを格納する Secret Manager のシークレットへのパス。 なし あり
CITRIX_CUSTOMER_ID Citrix お客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 30 ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

Cloud Storage

このスクリプトは、Cloud Storage からシステムログを取得し、そのログタイプに対して構成可能な値を使用して、Google Security Operations に取り込みます。詳しくは、Google Cloud Python クライアント ライブラリをご覧ください。

.env.yml ファイルに次の環境変数を定義します。Google Cloud にはセキュリティ関連のログがあり、一部のログタイプは Google Security Operations に直接エクスポートできません。詳細については、セキュリティ ログの分析をご覧ください。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 60 いいえ
GCS_BUCKET_NAME データを取得する Cloud Storage バケットの名前。 なし いいえ
GCP_SERVICE_ACCOUNT_SECRET_PATH Google Cloud サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_DATA_TYPE Google Security Operations インスタンスにデータを push するログタイプ。 なし いいえ

Duo 管理者

このスクリプトは、ユーザー アカウントやセキュリティなど、さまざまなオブジェクトに対して実行される CRUD オペレーションに関連するイベントを Duo Admin から取得します。イベントは、DUO_ADMIN ログタイプで Google Security Operations に取り込まれます。詳細については、Duo Admin API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 なし いいえ
DUO_API_DETAILS Duo アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。これには、Duo Admin API 統合キー、Duo Admin API 秘密鍵、Duo Admin API ホスト名が含まれます。例:
{ "ikey": "abcd123", "skey": "def345", "api_host": "abc-123" }
JSON ファイルのダウンロード手順については、Duo 管理者のドキュメントをご覧ください。
なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

MISP

このスクリプトは、オープンソースの脅威インテリジェンスと共有プラットフォームである MISP から脅威関係情報を取得し、MISP_IOC ログタイプを使用して Google Security Operations に取り込みます。詳細については、MISP Events API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。

変数 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 5 ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
ORG_NAME イベントをフィルタするための組織名。 なし いいえ
API_KEY 使用する認証の API キーを格納する Secret Manager のシークレットへのパス。 なし あり
TARGET_SERVER 作成した MISP インスタンスの IP アドレス。 なし ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

OneLogin イベント

このスクリプトは、OneLogin 環境からイベントを取得し、ONELOGIN_SSO ログタイプで Google Security Operations に取り込みます。これらのイベントは、ユーザー アカウントに対する操作などの情報を提供します。詳細については、OneLogin Events API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。OneLogin クライアント ID とクライアント シークレットについては、API 認証情報の使用をご覧ください。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 5 ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
CLIENT_ID OneLogin プラットフォームのクライアント ID。 なし いいえ
CLIENT_SECRET 認証に使用される OneLogin プラットフォームのクライアント シークレットを格納する Secret Manager のシークレットへのパス。 なし あり
TOKEN_ENDPOINT アクセス トークンをリクエストする URL。 https://api.us.onelogin.com/auth/oauth2/v2/token ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

OneLogin ユーザー コンテキスト

このスクリプトは、OneLogin 環境からユーザー アカウントに関連するデータを取得し、ONELOGIN_USER_CONTEXT ログタイプで Google セキュリティ オペレーションに取り込みます。詳しくは、OneLogin User API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。OneLogin クライアント ID とクライアント シークレットについては、API 認証情報の使用をご覧ください。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 30 ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
CLIENT_ID OneLogin プラットフォームのクライアント ID。 なし いいえ
CLIENT_SECRET 認証に使用される OneLogin プラットフォームのクライアント シークレットを格納する Secret Manager のシークレットへのパス。 なし あり
TOKEN_ENDPOINT アクセス トークンをリクエストする URL。 https://api.us.onelogin.com/auth/oauth2/v2/token ×
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

Proofpoint

このスクリプトは、特定の期間内に特定の組織からの攻撃の標的となったユーザーに関するデータを取得し、そのデータを Google Security Operations に取り込みます。使用される API の詳細については、個人 API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。Proofpoint サービス プリンシパルと Proofpoint secret の取得の詳細については、Arctic Wolf 構成ガイドにプルーフポイント TAP 認証情報を提供するをご覧ください。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 360 ×
CHRONICLE_DATA_TYPE Google Security Operations インスタンスにデータを push するログタイプ。 なし いいえ
PROOFPOINT_SERVER_URL Proofpoint Server API ゲートウェイのベース URL。 なし いいえ
PROOFPOINT_SERVICE_PRINCIPLE Proofpoint プラットフォームのユーザー名。通常、これはサービス プリンシパルです。 なし いいえ
PROOFPOINT_SECRET Proofpoint プラットフォームのパスワードが格納されているバージョンを持つ Secret Manager のパス。 なし あり
PROOFPOINT_RETRIEVAL_RANGE データを取得する日数を示す数値。指定できる値は 14、30、90 です。 なし いいえ

Pub/Sub

このスクリプトでは、Pub/Sub サブスクリプションからメッセージを収集し、データを Google Security Operations に取り込みます。サブスクリプション ゲートウェイを継続的にモニタリングし、新しいメッセージが表示されると取り込みます。詳細については、次のドキュメントをご覧ください。

この取り込みスクリプトでは、.env.yml ファイルと Cloud Scheduler ジョブの両方で変数を設定する必要があります。

  • .env.yml ファイルに次の環境変数を定義します。

    変数名 説明 デフォルト値 シークレット
    CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
    CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
    その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
    ×
    CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
    CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の操作をご覧ください。 なし いいえ
  • Cloud Scheduler の [メッセージ本文] フィールドで次の変数を JSON 形式の文字列として設定します。[メッセージ本文] フィールドの詳細については、Cloud Scheduler の作成をご覧ください。

    変数名 説明 デフォルト値 シークレット
    PROJECT_ID Pub/Sub プロジェクト ID。プロジェクト ID については、プロジェクトの作成と管理をご覧ください。 なし いいえ
    SUBSCRIPTION_ID Pub/Sub サブスクリプション ID。 なし ×
    CHRONICLE_DATA_TYPE Google Security Operations にデータを push するときに提供されるログタイプの取り込みラベル。ログタイプのリストについては、サポートされるデフォルト パーサーをご覧ください。 なし いいえ

    以下は、[メッセージ本文] フィールドの JSON 形式の文字列の例です。

    { "PROJECT_ID":"projectid-0000","SUBSCRIPTION_ID":"subscription-id","CHRONICLE_DATA_TYPE":"SQUID_PROXY"}
    

Slack 監査ログ

このスクリプトは、Slack Enterprise Grid 組織から監査ログを取得し、SLACK_AUDIT ログタイプで Google セキュリティ オペレーションに取り込みます。詳細については、Slack Audit Logs API をご覧ください。

.env.yml ファイルに次の環境変数を定義します。

変数名 説明 デフォルト値 シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler のジョブの間隔と同じにする必要があります。 5 いいえ
SLACK_ADMIN_TOKEN Slack 認証トークンを格納する Secret Manager のシークレットへのパス。
なし
はい
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ

STIX/TAXII

このスクリプトは、STIX/TAXII サーバーからインジケーターを取得し、それらを Google Security Operations に取り込みます。詳細については、STIX/TAXII API のドキュメントをご覧ください。 .env.yml ファイルに次の環境変数を定義します。

変数の名前 Description デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし あり
POLL_INTERVAL 関数が実行される頻度(分単位)。この時間は、Cloud Scheduler ジョブと同じである必要があります。 60 いいえ
TAXII_VERSION 使用する STIX/TAXII バージョン。使用可能なオプションは 1.1、2.0、2.1 です。 なし いいえ
TAXII_DISCOVERY_URL TAXII サーバーの Discovery URL。 なし いいえ
TAXII_COLLECTION_NAMES データの取得元のコレクション(CSV)。すべてのコレクションからデータを取得するには、空のままにします。 なし いいえ
TAXII_USERNAME 認証に必要なユーザー名(ある場合)。 なし いいえ
TAXII_PASSWORD_SECRET_PATH 認証に必要なパスワード(ある場合)。 なし あり

Tenable.io

このスクリプトは、Tenable.io プラットフォームからアセットと脆弱性データを取得し、TENABLE_IO ログタイプで Google Security Operations に取り込みます。使用されるライブラリについては、pyTenable Python SDK をご覧ください。

.env.yml ファイルに次の環境変数を定義します。アセットと脆弱性データの詳細については、Tenable.io API のアセットのエクスポート脆弱性のエクスポートをご覧ください。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 360 いいえ
TENABLE_ACCESS_KEY 認証に使用されるアクセスキー なし いいえ
TENABLE_SECRET_KEY_PATH Tenable Server のパスワードが格納されているバージョンを持つ Google Secret Manager のパス。 なし
TENABLE_DATA_TYPE Google Security Operations で取り込むデータの種類。指定できる値: ASSETS、VULNERABILITIES。 ASSETS, VULNERABILITIES いいえ
TENABLE_VULNERABILITY エクスポートに含める脆弱性の状態。有効な値: 「OPEN」、「REOPENED」、「FIXED」。 OPEN, REOPENED いいえ

Trend Micro Cloud App Security

このスクリプトでは、Trend Micro プラットフォームからセキュリティ ログが取得され、Google Security Operations に取り込まれます。使用される API の詳細については、Security Logs API をご覧ください。.env.yml ファイルに次の環境変数を定義します。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 10 ×
CHRONICLE_DATA_TYPE Google Security Operations インスタンスにデータを push するログタイプ。 なし いいえ
TREND_MICRO_AUTHENTICATION_TOKEN トレンド マイクロサーバーの認証トークンが格納されているバージョンを持つ Google シークレット マネージャーのパス。 なし あり
TREND_MICRO_SERVICE_URL Cloud App Security サービスのサービス URL。 なし いいえ
TREND_MICRO_SERVICE ログを取得する保護されたサービスの名前。カンマ区切り値がサポートされます。指定できる値: exchange、sharepoint、onedrive、dropbox、box、googledrive、gmail、team、exchangeserver、Salesforce_sandbox、Salesforce_production、team_chat。 exchange、sharepoint、onedrive、dropbox, box、googledrive、gmail、teams、exchangeserver、salesforce_sandbox、salesforce_production、teams_chat いいえ
TREND_MICRO_EVENT ログを取得するセキュリティ イベントのタイプ。カンマ区切り値がサポートされます。指定できる値: securityrisk、virtualanalyzer、ransomware、dlp。 securityrisk, virtualanalyzer, ransomware, dlp いいえ

Trend Micro Vision One

このスクリプトでは、Trend Micro Vision One の監査ログが取得され、ログタイプ TREND_MICRO_VISION_AUDIT で Google Security Operations に取り込まれます。使用される API の詳細については、Audit Logs API をご覧ください。.env.yml ファイルに次の環境変数を定義します。

変数 説明 デフォルト シークレット
CHRONICLE_CUSTOMER_ID Google Security Operations インスタンスのお客様 ID。 なし ×
CHRONICLE_REGION Google Security Operations インスタンスのリージョン。 us
その他の有効な値: asia-northeast1asia-south1asia-southeast1australia-southeast1europeeurope-west2europe-west3europe-west6me-central2me-west1northamerica-northeast2
×
CHRONICLE_SERVICE_ACCOUNT Google Security Operations サービス アカウントの JSON ファイルを格納する Secret Manager のシークレットへのパス。 なし
CHRONICLE_NAMESPACE Google Security Operations ログにラベルが付けられている名前空間。Google Security Operations の名前空間については、アセットの名前空間の使用をご覧ください。 なし いいえ
POLL_INTERVAL 追加のログデータを取得するために関数を実行する頻度間隔(分単位)。この期間は、Cloud Scheduler ジョブの間隔と同じにする必要があります。 10 いいえ
TREND_MICRO_AUTHENTICATION_TOKEN トレンド マイクロサーバーの認証トークンが格納されているバージョンを持つ Google シークレット マネージャーのパス。 なし あり
TREND_MICRO_DOMAIN サービス エンドポイントが配置されている Trend Micro Vision One リージョン。 なし いいえ