Fivetran のログを収集する
以下でサポートされています。
Google SecOps
SIEM
このドキュメントでは、Webhook を使用してログを Google Security Operations に push するように Fivetran を構成する方法について説明します。
Fivetran は、さまざまなソースからデータ ウェアハウスへのデータ パイプラインを自動化するデータ統合プラットフォームです。Fivetran は、コネクタ同期イベント、変換イベント、接続ステータスの変更などの運用イベントを生成します。これらのイベントは、モニタリング、アラート、セキュリティ分析のためにアウトバウンド Webhook 経由で外部エンドポイントに送信できます。
始める前に
次の前提条件を満たしていることを確認してください。
- Google SecOps インスタンス。
- 管理者権限またはアカウント レベルの権限を持つ Fivetran アカウント。
- Google Cloud コンソールへのアクセス(API キーの作成用)。
- REST API アクセスが有効になっている Fivetran アカウント。
Google SecOps で Webhook フィードを作成する
フィードを作成する
- [SIEM Settings] > [Feeds] に移動します。
- [+ 新規追加] をクリックします。
- [単一フィードを設定] を選択します。
- [フィード名] フィールドに、名前を入力します(例:
Fivetran Events)。 - [Source type] として [Webhook] を選択します。
- [ログタイプ] として [Fivetran] を選択します。
- [次へ] をクリックします。
- 次の入力パラメータの値を指定します。
- Split delimiter(省略可): 空白のままにします。
- アセットの名前空間: アセットの名前空間。
- Ingestion labels: このフィードのイベントに適用されるラベル。
- [次へ] をクリックします。
- 新しいフィードの設定を確認し、[送信] をクリックします。
秘密鍵を生成して保存する
- フィードの詳細ページで、[シークレット キーを生成] をクリックします。
- ダイアログに秘密鍵が表示されます。
- 秘密鍵をコピーして安全に保存します。
フィード エンドポイントの URL を取得する
- フィードの [詳細] タブに移動します。
- [エンドポイント情報] セクションで、[フィード エンドポイント URL] をコピーします。
- 次の手順で使用するため、この URL を保存します。
- [完了] をクリックします。
Google Cloud API キーを作成する
Google SecOps では、認証に API キーが必要です。
API キーを作成する
- Google Cloud コンソールの [認証情報] ページに移動します。
- プロジェクトを選択します。
- [認証情報を作成] > [API キー] をクリックします。
- [API キーを編集] をクリックして、キーを制限します。
API キーを制限する
- [API キー] 設定で、次の操作を行います。
- 名前: わかりやすい名前を入力します(例:
SecOps Webhook API Key)。
- 名前: わかりやすい名前を入力します(例:
- [API の制限] で次の操作を行います。
- [キーを制限] を選択します。
- プルダウンで [Google SecOps API](または [Chronicle API])を検索して選択します。
- [保存] をクリックします。
- API キーの値をコピーして安全に保存します。
Fivetran Webhook を構成する
Webhook URL を作成する
エンドポイント URL と API キーを組み合わせます。
<ENDPOINT_URL>?key=<API_KEY>
Fivetran REST API を使用して Webhook を作成する
Fivetran API 認証情報を取得する
- Fivetran アカウントにログインします。
- [アカウント設定] > [API 構成] に移動します。
- API キーがない場合は、[API キーを生成] をクリックします。
- API キーと API Secretをコピーします。
アカウント単位の Webhook を作成する
このメソッドを使用すると、アカウント内のすべてのコネクタからイベントを受信できます。
ターミナルを開いて次のコマンドを実行します。
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 のプロフェッショナルから回答を得ることができます。