Webhookシークレットを安全に共有する
使用後に期限切れとなる暗号化リンクで、Webhook署名シークレットと検証トークンを共有しよう。
問題
Webhookシークレットは受信するHTTPリクエストが正当であることを検証するために使われる。これらのシークレットがSlackやメールで共有されると、チャンネルにアクセスできる人なら誰でもWebhookペイロードを偽造できる。Webhookシークレットが侵害されると、不正なデータ注入、偽の決済通知、または壊れたインテグレーションにつながる可能性がある。
Vaulted のサポート内容
VaultedはWebhookシークレットをクライアントサイドでAES-256-GCMを使って暗号化し、自己消滅リンクで配信する。サーバーはシークレットを平文で見ることはなく、リンクは閲覧後に期限切れとなる。シークレットが転送中に一度も露出しなかったため、Webhookの検証は完全に機能し続ける。
手順
- Webhook署名シークレットをVaultedに貼り付ける
- 必要とするチームメンバーの数に適した閲覧回数制限を設定する
- インテグレーションを設定する開発者に暗号化リンクを共有する
- 相手がシークレットをWebhookハンドラの設定にコピーし、リンクは期限切れとなる