[ 到達性と送信者のルール ]

ワンクリックで購読解除: 必要なメッセージと HTTP 動作を実装します。

RFC 8058 、単なる設定ページを開くリンクではなく、認証されたメッセージ信号および状態を変更する HTTPS POST として実装します。

EmailAuth研究チームによる · 3 分で読めます

【ポイント】

  • RFC 8058 、単なる設定ページを開くリンクではなく、認証されたメッセージ信号および状態を変更する HTTPS POST として実装します。
  • URI を目的の受信者とリストにバインドし、指定された POST を直接処理し、HTTP 応答を超えた永続的な抑制を検証します。
このページでは

ワンクリックで購読解除 アクションを通知するメッセージとそれを処理するサービスの 2 つのシステムを接続します。正しく見えるヘッダーは実装の半分にすぎません。エンドポイントは、対象のサブスクリプションを識別し、ログインせずに指定されたリクエストを受け入れ、オプトアウトを有効にする必要があります。

署名する前にメッセージを作成する

RFC 8058では、HTTPS URI を含む 1 つのList-Unsubscribeフィールドと、 List-Unsubscribe =One-Click を含む 1 つのList-Unsubscribe-Postフィールドが必要です。有効な DKIM署名 両方のフィールドをカバーする必要があります。 mailto などの他の非 HTTP/S 購読解除 URI もList-Unsubscribeに表示される場合があります。 RFC 8058セクション 3 および 4.

最小限のヘッダー ペアの例は次のとおりです。

List-Unsubscribe: <https://unsubscribe.example.test/u/opaque-token>

List-Unsubscribe-Post : List-Unsubscribe = ワンクリック

予約されたホスト名とトークンは、操作上のエンドポイントではなく、教育用のプレースホルダーです。これらのフィールドは、関連する最後の署名ステップの前に追加します。発行されたメッセージを検査して、署名の h= リストにそれらが含まれていること、およびすべての変換後に暗号検証が成功したことを確認します。

URI で正確なアクションを識別するようにする

URI には、受信者とリストを識別するのに十分な情報が含まれている必要があります。受信者は追加の受信者フィールドを入力したり、好みのアンケートに回答したりすることはできません。不透明で偽造が難しいコンポーネントを使用し、エンドポイントで検証します。 URL、ログ、または分析でアドレスを不必要に公開しないようにします。

トークンを、一般的なアカウントの資格情報としてではなく、狭い範囲の購読解除を実行する権限として扱います。メッセージにアクセスできる誰かがそれを使用できる可能性があります。アカウントの所有権を変更したり、ユーザーとしてサインインしたり、無関係なサブスクリプションを変更したりしないでください。ポリシーを考慮せずに古いメッセージが役に立たないオプトアウト パスにならないように、保存と有効期限の動作を慎重に選択してください。

指定されたPOSTを直接処理します

受信者は、本体にアドバタイズされたキーと値のペアを含む HTTPS POST を送信します。 RFC 8058では application/x-www-form-urlencoded を許可し、multipart/form-data を推奨しています。リクエストは、Cookie、HTTP 認証、または以前のブラウザー コンテキストに依存してはなりません。送信者は HTTPS リダイレクトを返してはなりません。受信者はアクションを実行する前にユーザーの同意を得る必要があります。

本文リンクは人間が判読できる設定ページを提供できますが、POST アクションはそれ以上の操作なしで完了する必要があります。実装上の安全策として、自動リンク取得自体がサブスクライバを削除しないように、GET リクエストを非破壊的なものにしてください。その安全策は、RFC が対処する問題を動機とした運用設計の推奨事項です。

ステータスコードだけでなくアプリケーションの状態を確認する

仮想のエンドポイントが有効なニュースレター トークンに対して成功を返したものの、次のキャンペーンのエクスポートには依然として同じ受信者/リストのペアが含まれているとします。プロトコル要求はサービスに到達している可能性がありますが、動作抑止は確立されていません。ステータス コードを完了として扱うのではなく、永続的な決定、伝播確認、および視聴者選択の入力を検査します。

承認されたテストの場合、最初に期待される結果を定義します。GET および無効なトークンによってサブスクリプションが削除されるべきではありません。有効な POST は、意図したペアのみに影響を与える必要があります。それを繰り返すと、同じ最終状態が保存されるはずです。これらは設計上の予想であり、実行されたローカル テストや運用テストではありません。

導入の場合は、 TLS証明書の有効性、ホスト名、パブリック到達可能性、サポートされている両方のフォーム エンコーディング、プロキシの動作、およびレート制限を個別に検証します。応答がログイン サービスや追跡サービスにリダイレクトされないことを確認します。次のキャンペーンの選択で、キャッシュやサードパーティのエクスポートを含む抑制が適用されるようにします。

エンドポイントを永続的なサービスとして運用する

繰り返される有効なリクエストを安全にし、最小限の監査イベントを記録し、トークンを公開することなく障害を監視します。処理エラーと抑制バックログに関するアラート。永続的な更新の前に成功を主張する応答には、信頼性の高い処理設計と制限された完了時間が必要です。

メッセージ検証、エンドポイント テスト、および制御された受信者に対する監視された次回送信の除外を使用して実装を終了します。これらだけでは、すべてのメールボックス インターフェイスに購読解除ボタンが表示されることを証明するものはありません。

失敗したチェックポイントから修復を選択します

リダイレクトまたはログイン要件により、エンドポイントの修復が必要になります。受信者/リストのマッピングが間違っている場合は、承認スコープの修復が必要になります。古いキャンペーンエクスポートを含む正しいエンドポイントには、伝播の修復が必要です。 1 つの POST が成功を返したため、3 つすべてを閉じないでください。

[ 取り除く ]

RFC 8058 、単なる設定ページを開くリンクではなく、認証されたメッセージ信号および状態を変更する HTTPS POST として実装します。

【役割別】

これがあなたにとって何を意味するか

実際の次のステップに向けて、自分の役割を選択してください。

IT / メール管理者

両方のプロトコルの半分を確認する

署名されたメッセージとエンドポイントは一致する必要があります。

次のステップ

  1. 必要なヘッダーに署名します。
  2. リクエストのエンコーディングをテストします。
  3. 次回送信除外を確認します。

CISO / SecOps

トークン権限の範囲を狭くする

メッセージへのアクセスにより購読解除が許可される場合があります。

次のステップ

  1. 不透明な検証済みトークンを使用します。
  2. ログ内の URL を保護します。
  3. 無関係なアカウントのアクションを防止します。

創業者 / 非技術系

オプトアウトを信頼できるものにする

装飾リンクはユーザーのリクエストを完了するものではありません。

次のステップ

  1. エンドポイントの所有権を割り当てます。
  2. 資金永続的抑制。
  3. 障害とバックログを監視します。

[ よくある質問 ]

よくある質問

RFC 8058には本文の購読解除リンクだけで十分ですか?

いいえ。このプロトコルはメッセージ ヘッダーのペアと HTTPS POST を使用します。

URI はリストと受信者の両方を識別する必要がありますか?

はい。リクエストはフォローアップアンケートに依存することはできません。

POST にはログインしたブラウザが必要ですか?

いいえ。Cookie、認証、または以前のブラウザーのコンテキストに依存してはなりません。

エンドポイントは設定ページにリダイレクトできますか?

送信者は、この操作に対して HTTPS リダイレクトを返してはなりません。

GET リクエストは何をすべきでしょうか?

安全な実装では、フェッチャーによる誤った削除を避けるために、非破壊的な状態が保たれます。

この例では実稼働TLSが検証されていますか?

いいえ、これは仮定の伝播失敗とテスト計画です。 HTTPS、リクエストの解析、および実際の抑制には、引き続き承認された検証が必要です。

重複したリクエストをテストする必要があるのでしょうか?

再試行によって購読解除の範囲が拡大したり、破損状態が拡大したりしてはなりません。

正しい実装はプロバイダー ボタンを保証しますか?

いいえ、インターフェイスの適格性と表示は、依然として受信者の個別の決定となります。

[ 情報源 ]

情報源

  1. RFC 8058ワンクリック購読解除

    セクション §3.1 · §3.2 · §4 · §5 · §6

  2. RFC 6376 DKIM

    セクション §3.5 · §5.4 · §6.1

  3. RFC 2369リストヘッダー

    セクション §3.2

[ 用語集 ]

用語集

ワンクリックで投稿
RFC 8058購読解除アクションを実行する HTTPS リクエスト。
不透明なトークン
基礎となるデータを直接公開せずに、承認されたアクションを識別する値。
冪等の処理
同等のリクエストを繰り返すと、意図した最終状態は同じになります。

企業の来歴

一流の金融機関と政府が選ばれる理由 電子メール セキュリティ ダッシュボードを廃止しました。

従来の電子メール認証プラットフォームはダッシュボードを販売し、エンジニアに作業を依頼します。一か八かの環境では、手動による監視は適用の遅れ、構成のドリフト、および監視されていないシャドウ ドメインを意味します。

EmailAuthは、エージェントの電子メール来歴プラットフォームです。 当社のエージェントが執行します p=reject、サードパーティの送信者を調整し、ドメインを完全に移動します。 RFC 9989 新しいDMARC標準に準拠し、人間による監査機能を備えています。

政府 大企業 ティア1金融機関

SaaS · 専用テナント · エアギャップオンプレミス · BYOK 暗号化

ナレッジベース