シークレットを含めずにWebhookの診断情報を記録する
署名情報、非公開のペイロードデータ、受信側のシークレットを除き、Webhookのイベント、配信、種類、時刻、ステータスを記録します。
最終確認日
スクリーンショットは英語版の画面です。
Webhookの診断情報は認証情報や非公開データをコピーせずに試行を説明する必要があります。現在のペイロードに有効な共有トークンが含まれるshare.accessedでは特に重要です。

手順
- 署名を検証した後、
X-Dosya-Event-Id、X-Dosya-Delivery-Id、X-Dosya-Event-Type、受信側の時刻、検証結果、内部の相関IDまたはキューIDを含む構造化ログを作成します。 - エンドポイントの署名シークレット、生の
X-Dosya-Signature、認証情報、リクエスト本文全体を除外してください。アップロードと削除のデータにはファイルIDと名前が含まれます。共有アクセスのデータにはshare_idと、保持者が使えるtokenが含まれます。 - 担当者にペイロードの内容が必要な場合は、イベントの種類ごとにシークレットでない項目を許可リストに登録し、ログに記録する前に値を伏せてください。将来追加される項目が自動でログに入る可能性のある汎用JSONシリアライザーに頼らないでください。
- 永続的に受け入れた後、空または機密情報を除いた2xx応答を返します。dosyaは受信側のレスポンスの先頭500文字を保存するため、アプリケーションログが安全でもレスポンス本文から最近の配信にデータが公開される場合があります。
- 失敗時はペイロードではなく、ローカルの例外クラスと内部トレースIDをログに記録してください。dosyaは別途HTTPステータスと切り詰めたレスポンスの一部、または応答がない場合は通信エラーを記録します。
- 連携 → Webhook → 配信を開き、イベントの種類、作成時刻、ステータス、試行回数、次の再試行で制御されたテストを照合します。受信側のログとdosyaのレスポンスのツールチップのどちらにもシークレットが表示されないことを確認してください。
送信される各リクエストにはContent-Type: application/jsonとUser-Agent: dosya-webhooks/1も含まれます。通信の確認には役立ちますが、配信の認証にはなりません。

期待される結果
担当者はイベント、配信、内部ジョブの識別子を使って、dosyaから受信側までWebhookを追跡できます。ログと保存されたレスポンスの一部には署名シークレット、共有トークン、ファイルのペイロード、その他の機密情報が含まれません。
応答の下に非公開のテキストが表示されます。 受信側のレスポンス本文から取り除いて変更をデプロイし、既存の表示内容をチケットやチャットにコピーしないでください。
失敗にHTTPステータスがありません。 保存されたエラーをDNS、TLS、ネットワーク、タイムアウトの経路として扱い、受信側プラットフォームのトレースIDと照合してください。
関連ガイド
この記事は役に立ちましたか?
評価の結果を読み込んでいます…
投票すると、回答を変更できるように、必要な投票用Cookieが最長180日間保存されます。
質問と回答
このガイドの手順について質問できます。質問は確認後に公開されます。
公開の質問には、アカウントの詳細、認証情報、非公開ファイルを含めないでください。これらについては 非公開サポート をご利用ください。
質問を読み込んでいます…
dosyaアカウントにサインインすると、質問を投稿できます。