Onfido のログを収集する
このパーサーは、Onfido SYSLOG と JSON 形式のログからフィールドを抽出し、UDM にマッピングします。grok を使用してメッセージ フィールドを解析し、JSON ペイロードが存在する場合は処理して、特定の商品イベントタイプを UDM イベントタイプにマッピングします。これには、ログインが成功した場合はイベントタイプを USER_LOGIN
に、その他のイベントの場合は USER_UNCATEGORIZED
に設定することが含まれます。また、ユーザー情報、送信元 IP、セキュリティ結果の詳細の UDM フィールドも入力します。
始める前に
次の前提条件を満たしていることを確認します。
- Google SecOps インスタンス。
- Onfido ダッシュボードへの特権アクセス。
フィードを設定する
Google SecOps プラットフォームでフィードを設定するには、次の 2 つのエントリ ポイントがあります。
- [SIEM 設定] > [フィード]
- [Content Hub] > [Content Packs]
[SIEM 設定] > [フィード] でフィードを設定する
フィードを構成する手順は次のとおりです。
- [SIEM Settings] > [Feeds] に移動します。
- [Add New Feed] をクリックします。
- 次のページで [単一のフィードを設定] をクリックします。
- [フィード名] フィールドに、フィードの名前を入力します(例: Onfido Logs)。
- [Source type] として [Webhook] を選択します。
- [ログタイプ] として [Onfido] を選択します。
- [次へ] をクリックします。
- 省略可: 次の入力パラメータの値を指定します。
- Split delimiter: ログ行を区切るために使用される区切り文字(
\n
など)。
- Split delimiter: ログ行を区切るために使用される区切り文字(
- [次へ] をクリックします。
- [Finalize] 画面でフィードの設定を確認し、[Submit] をクリックします。
- [秘密鍵を生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。
- 秘密鍵をコピーして保存します。この秘密鍵を再び表示することはできません。必要に応じて、新しい秘密鍵を再生成できますが、その場合以前の秘密鍵は無効になります。
- [詳細] タブで、[エンドポイント情報] フィールドから、フィードのエンドポイント URL をコピーします。 このエンドポイント URL をクライアント アプリケーション内で指定する必要があります。
- [完了] をクリックします。
コンテンツ ハブからフィードを設定する
次のフィールドに値を指定します。
- Split delimiter: ログ行を区切るために使用される区切り文字(
\n
など)。
詳細オプション
- フィード名: フィードを識別する値が事前入力されています。
- ソースタイプ: ログを Google SecOps に収集するために使用される方法。
- アセット Namespace: フィードに関連付けられた Namespace。
Ingestion Labels: このフィードのすべてのイベントに適用されるラベル。
[秘密鍵を生成する] をクリックして、このフィードを認証するためのシークレット キーを生成します。
秘密鍵をコピーして保存します。この秘密鍵を再び表示することはできません。必要に応じて、新しい秘密鍵を再生成できますが、その場合以前の秘密鍵は無効になります。
[詳細] タブで、[エンドポイント情報] フィールドから、フィードのエンドポイント URL をコピーします。 このエンドポイント URL をクライアント アプリケーション内で指定する必要があります。
Webhook フィード用の API キーを作成する
Google Cloud コンソール > [認証情報] に移動します。
[認証情報を作成] をクリックして [API キー] を選択します。
API キーのアクセスを Google Security Operations API に制限します。
エンドポイント URL を指定する
- クライアント アプリケーション内で、Webhook フィードで提供される HTTPS エンドポイント URL を指定します。
次の形式でカスタム ヘッダーの一部として API キーと秘密鍵を指定して、認証を有効にします。
X-goog-api-key = API_KEY X-Webhook-Access-Key = SECRET
推奨事項: API キーは URL 内で指定するのではなくヘッダーとして指定してください。
Webhook クライアントがカスタム ヘッダーをサポートしていない場合は、次の形式のクエリ パラメータを使用して API キーと秘密鍵を指定できます。
ENDPOINT_URL?key=API_KEY&secret=SECRET
以下を置き換えます。
ENDPOINT_URL
: フィード エンドポイントの URL。API_KEY
: Google SecOps に対する認証に使用する API キー。SECRET
: フィードの認証用に生成した秘密鍵。
Onfido Webhook を構成する
- Onfido ダッシュボードにログインします。
- [設定] > [Webhook] に移動します。
- [Webhook を追加] をクリックします。
次の入力パラメータの値を指定します。
- Webhook URL: Google SecOps API エンドポイントの
<ENDPOINT_URL>
を入力します。
- Events: Webhook をトリガーするイベントを選択します(例: check.completed または report.completed を選択します)。
- Webhook URL: Google SecOps API エンドポイントの
[保存] をクリックして、Webhook を作成します。
UDM マッピング テーブル
ログフィールド | UDM マッピング | 論理 |
---|---|---|
category |
security_result.category_details |
未加工ログの category フィールドの値が security_result.category_details に割り当てられます。 |
check_id |
metadata.product_log_id |
未加工ログの json_data フィールドから抽出された check_id フィールドの値が metadata.product_log_id に割り当てられます。prod_evt_type が「Successful login」の場合、値「AUTHTYPE_UNSPECIFIED」が割り当てられます。 |
metadata.event_timestamp |
未加工ログのエントリのタイムスタンプはエポック秒に変換され、metadata.event_timestamp に割り当てられます。 |
|
metadata.event_type |
prod_evt_type が「Successful login」の場合、値 USER_LOGIN が割り当てられます。それ以外の場合は USER_UNCATEGORIZED が割り当てられます。 |
|
metadata.product_name |
パーサーコードで値が「ONFIDO」に設定されます。 | |
prod_evt_type |
metadata.product_event_type |
未加工ログの prod_evt_type フィールドの値が metadata.product_event_type に割り当てられます。 |
metadata.vendor_name |
パーサーコードで値が「ONFIDO」に設定されます。 | |
metadata.product_version |
パーサーコードで値が「ONFIDO」に設定されます。 | |
security_result.action |
security_result.action |
prod_evt_type が「Successful login」の場合、値 ALLOW が割り当てられます。 |
src_ip |
principal.ip |
未加工ログの src_ip フィールドの値が principal.ip に割り当てられます。 |
user_email |
target.user.email_addresses |
未加工ログの user_email フィールドの値が target.user.email_addresses に割り当てられます。 |
user_name |
target.user.user_display_name |
未加工ログの user_name フィールドの値が target.user.user_display_name に割り当てられます。 |
さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。