Fivetran のログを収集する

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

このドキュメントでは、Webhook を使用してログを Google Security Operations に push するように Fivetran を構成する方法について説明します。

Fivetran は、さまざまなソースからデータ ウェアハウスへのデータ パイプラインを自動化するデータ統合プラットフォームです。Fivetran は、コネクタ同期イベント、変換イベント、接続ステータスの変更などの運用イベントを生成します。これらのイベントは、モニタリング、アラート、セキュリティ分析のためにアウトバウンド Webhook 経由で外部エンドポイントに送信できます。

始める前に

次の前提条件を満たしていることを確認してください。

  • Google SecOps インスタンス。
  • 管理者権限またはアカウント レベルの権限を持つ Fivetran アカウント。
  • Google Cloud コンソールへのアクセス(API キーの作成用)。
  • REST API アクセスが有効になっている Fivetran アカウント。

Google SecOps で Webhook フィードを作成する

フィードを作成する

  1. [SIEM Settings] > [Feeds] に移動します。
  2. [+ 新規追加] をクリックします。
  3. [単一フィードを設定] を選択します。
  4. [フィード名] フィールドに、名前を入力します(例: Fivetran Events)。
  5. [Source type] として [Webhook] を選択します。
  6. [ログタイプ] として [Fivetran] を選択します。
  7. [次へ] をクリックします。
  8. 次の入力パラメータの値を指定します。
    • Split delimiter(省略可): 空白のままにします。
    • アセットの名前空間: アセットの名前空間
    • Ingestion labels: このフィードのイベントに適用されるラベル。
  9. [次へ] をクリックします。
  10. 新しいフィードの設定を確認し、[送信] をクリックします。

秘密鍵を生成して保存する

  1. フィードの詳細ページで、[シークレット キーを生成] をクリックします。
  2. ダイアログに秘密鍵が表示されます。
  3. 秘密鍵をコピーして安全に保存します。

フィード エンドポイントの URL を取得する

  1. フィードの [詳細] タブに移動します。
  2. [エンドポイント情報] セクションで、[フィード エンドポイント URL] をコピーします。
  3. 次の手順で使用するため、この URL を保存します。
  4. [完了] をクリックします。

Google Cloud API キーを作成する

Google SecOps では、認証に API キーが必要です。

API キーを作成する

  1. Google Cloud コンソールの [認証情報] ページに移動します。
  2. プロジェクトを選択します。
  3. [認証情報を作成] > [API キー] をクリックします。
  4. [API キーを編集] をクリックして、キーを制限します。

API キーを制限する

  1. [API キー] 設定で、次の操作を行います。
    • 名前: わかりやすい名前を入力します(例: SecOps Webhook API Key)。
  2. [API の制限] で次の操作を行います。
    1. [キーを制限] を選択します。
    2. プルダウンで [Google SecOps API](または [Chronicle API])を検索して選択します。
  3. [保存] をクリックします。
  4. API キーの値をコピーして安全に保存します。

Fivetran Webhook を構成する

Webhook URL を作成する

  • エンドポイント URL と API キーを組み合わせます。

    <ENDPOINT_URL>?key=<API_KEY>
    

Fivetran REST API を使用して Webhook を作成する

Fivetran API 認証情報を取得する

  1. Fivetran アカウントにログインします。
  2. [アカウント設定] > [API 構成] に移動します。
  3. API キーがない場合は、[API キーを生成] をクリックします。
  4. API キーAPI Secretをコピーします。

アカウント単位の Webhook を作成する

このメソッドを使用すると、アカウント内のすべてのコネクタからイベントを受信できます。

  1. ターミナルを開いて次のコマンドを実行します。

    curl -X POST [https://api.fivetran.com/v1/webhooks/account](https://api.fivetran.com/v1/webhooks/account) \
            -u "API_KEY:API_SECRET" \
            -H "Content-Type: application/json" \
            -H "Accept: application/json" \
            -d '{
                    "url": "[https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=YOUR_CHRONICLE_API_KEY](https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=YOUR_CHRONICLE_API_KEY)",
                    "events": [
                            "sync_start",
                            "sync_end",
                            "transformation_start",
                            "transformation_succeeded",
                            "transformation_failed",
                            "connection_successful",
                            "connection_failure",
                            "create_connector",
                            "pause_connector",
                            "resume_connector",
                            "edit_connector",
                            "delete_connector",
                            "force_update_connector",
                            "resync_connector",
                            "resync_table"
                    ],
                    "active": true,
                    "secret": "YOUR_CHRONICLE_SECRET_KEY"
            }'
    

Webhook の詳細

利用可能な Webhook イベント

イベント 説明
sync_start コネクタの同期を開始しました
sync_end コネクタの同期が完了しました
transformation_start 変換が開始されました
transformation_succeeded 変換が正常に完了しました
transformation_failed 変換に失敗しました
connection_successful 接続テストに成功しました
connection_failure 接続テストに失敗しました
create_connector 新しいコネクタが作成されました

Webhook の再試行動作

Fivetran は、次のスケジュールで最大 24 時間、失敗したウェブフックを自動的に再試行します。

再試行 Time After Initial Attempt(初回試行後の時間)
1 回目の再試行 6 分
2 回目の再試行 27 分
3 回目の再試行 1 時間 45 分
4 回目の再試行 6 時間 25 分
5 回目の再試行 23 時間 13 分

UDM マッピング テーブル

ログフィールド UDM マッピング ロジック
jsonPayload.connector_id additional.connector_id 値が直接コピーされます。
jsonPayload.connector_type additional.connector_type 値が直接コピーされます。
jsonPayload.data.query additional.query 値が直接コピーされます。
なし metadata.event_type プリンシパルとターゲットの存在に基づいて設定されます。
jsonPayload.event metadata.product_event_type 値が直接コピーされます。
jsonPayload.sync_id metadata.product_log_id 値が直接コピーされます。
jsonPayload.connector_name principal.hostname 値が直接コピーされます。
resource.labels.email_id principal.user.email_addresses 形式が有効なメールの場合にマッピングされます。
resource.labels.unique_id principal.user.userid 値が直接コピーされます。
severity security_result.severity 「INFO」は INFORMATIONAL にマッピングされます。
logName target.resource.name 値が直接コピーされます。
なし target.resource.type DATABASE に設定します。
なし metadata.product_name FIVETRAN に設定します。
なし metadata.vendor_name FIVETRAN に設定します。

変更履歴

このパーサーの変更ログを表示する

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