Skip to main content
Webhook を使用すると、イベントを外部の Web サーバーに配信できます。Auth0 では、イベントをサードパーティーのログ管理・分析システムに自動的に送信するための統合がいくつか用意されています。ただし、使用するサードパーティーシステムがサポートされていない場合は、カスタム webhook 統合を設定できます。
各 webhook 設定で登録できるペイロード URL は 1 つのみですが、同じ URL を複数のストリームで使用できます。ペイロードは JSON Lines 形式で配信されます。Webhook 設定でログを取り込む際は、この点に注意してください。

APIエンドポイントを設定

HTTP POST リクエストを受け付ける、1つのルート (/api/logs など) のみを持つAPIを構築します。
自己署名のHTTP証明書はサポートされていません。

ログストリームを設定する

  1. Dashboard > Monitoring > Streams に移動し、Create Stream をクリックします。
    Dashboard Monitoring Streams
  2. Custom Webhook を選択し、新しいストリームに一意の名前を入力します。
  3. 以下の設定を行います。
    Dashboard Monitoring Streams Custom Webhook Settings Tab
  4. Save をクリックします。

設定のテスト

  1. Healthビューに切り替え、Stream StatusActiveになっていることを確認します。
  2. ログイン、トークン交換、Auth0 Management API の呼び出しなど、テナントのログイベントが生成される操作を実行します。
  3. そのイベントがテナントのログに記録されていることを確認します。
  4. API がイベントデータを含む HTTP POST リクエストを受信していることを確認します。
  5. Healthビューに移動し、エラーが発生していないことを確認します。

Webhook のトラブルシューティング

Webhook が正常に動作しない場合、原因を切り分けて特定するのは難しいことがあります。Webhook は非同期で動作するため、テストでは Webhook をトリガーして待機し、その後レスポンスを確認する必要がある場合があります (そもそもレスポンスを受け取れていればですが) 。 ただし、上で説明したような非効率な手順に代わる方法はあります。特定の Webhook のトラブルシューティング方法の詳細はこの記事の範囲外ですが、デバッグの際には次のような手順を試せます。
  1. 参考になるメッセージがないか、Auth0 Dashboard > Monitoring > Logs を確認します。
  2. MockbinBeeceptor、または (セルフホスト型の) RequestBin などのツールを使って、Webhook が送信しているリクエストを分析します。
  3. cURL または Postman を使ってリクエストをモックします。
  4. localtunnelngrok などを使って、Webhook のコードをローカルでテストします。
  5. RunscopeAssertible などのツールを使って、実行フロー全体を確認します。

詳細はこちら