Ein Abmeldelink im Nachrichtentext, a List-Unsubscribe Header und der Ein-Klick-Mechanismus sind verwandte, aber unterschiedliche Funktionen. Eine Diagnose sollte ermitteln, welchen Mechanismus der Absender tatsächlich ausgegeben hat und ob die erforderlichen signierten Header vorhanden sind. Das bloße Erkennen des Worts „unsubscribe“ in der Quelle stellt noch keine funktionierende Ein-Klick-Implementierung dar.
Lesen Sie die beiden Felder gemeinsam
RFC 2369 definiert List-Unsubscribe als Listenbefehlsfeld, das URLs zum Verlassen einer Liste enthält. Es kann Methoden wie Mailto oder HTTPS beschreiben. RFC 8058 fügt List-Unsubscribe-Post für den Ein-Klick-Mechanismus hinzu. Letzteres verwendet den Wert List-Unsubscribe =One-Click, mit einem HTTPS-URI in List-Unsubscribe . Eine Mailto-Option allein ist nicht der HTTPS-Mechanismus RFC 8058 . RFC 2369 Abschnitt 3.2, RFC 8058 Abschnitt 3.
Der One-Click-Empfänger sendet einen HTTPS-POST mit dem angegebenen Abmeldewert. Eine GET-Routine zur Überprüfung einer URL darf nicht selbst die RFC 8058 -Abmeldeaktion ausführen. Diese Unterscheidung ist wichtig, da Linkscanner möglicherweise URLs abrufen, ohne dass eine Person die Absicht hat, eine Liste zu verlassen. Verwandeln Sie die Diagnoseprüfung nicht in eine unbefugte Abonnementänderung.
Überprüfen Sie die Signaturanforderung
RFC 8058 erfordert eine gültige DKIM Signatur deckt sowohl List-Unsubscribe als auch List-Unsubscribe-Post ab. Das Auffinden der beiden Feldnamen in der h=-Liste einer Signatur ist eine nützliche Strukturprüfung, beweist jedoch nicht, dass die Signatur verifiziert ist.
Bewahren Sie die original signierte Nachricht für eine tatsächliche Überprüfung auf. Mehrere Signaturen und wiederholte Header-Felder erfordern eine sorgfältige Auswahl; Eine naive Suche nach Teilzeichenfolgen kann dazu führen, dass eine nicht verwandte Signatur mit der Signatur verwechselt wird, die die Anforderung erfüllt. Behalten Sie die Signierungsabdeckung, die kryptografische Validierung und das Endpunktverhalten als separate Prüfungen bei.
Verwenden Sie ein kontrolliertes Beispiel
Betrachten Sie eine hypothetische Nachricht mit den richtigen zwei Headerwerten. Die einzige gültige Signatur deckt „Von“ und „Betreff“ ab, nicht jedoch die Abmeldefelder. Eine zweite Signatur listet beide Felder auf, schlägt jedoch bei der Überprüfung fehl. Diese Nachricht hat sowohl a DKIM Die Signatur besteht irgendwo in ihrer Quelle aus und weist eine scheinbare Abdeckung auf, doch keine der beiden Signaturen erfüllt die kombinierten RFC 8058 Anforderungen.
Der nächste Schritt besteht darin, durch eine genehmigte Absenderänderung eine Signatur zu identifizieren oder zu erstellen, die die beiden Felder sowohl überprüft als auch abdeckt. Für dieses Lehrbeispiel wurde keine Signatur überprüft oder das Abonnement geändert. Selbst eine nachträglich verifizierte Abdecksignatur würde das HTTPS-Endpunktverhalten und die Unterdrückung des nächsten Sendens ungetestet lassen.
Für einen autorisierten End-to-End-Test verwenden Sie ein dediziertes Testabonnement und die vom Absender unterstützte Testumgebung. Überprüfen Sie eine gültige Signatur, senden Sie den beabsichtigten POST und bestätigen Sie den Status des Testabonnements durch den eigenen Nachweis des Dienstes. RFC 8058 verbietet HTTPS-Weiterleitungen und schließt Cookies, HTTP-Autorisierung und anderen Anforderungskontext vom POST aus. Der Empfänger muss vor dem Posten die Einwilligung des Nutzers einholen. Erfassen Sie alle Umleitungs- oder Anmeldeanforderungen als Fehler, anstatt sich durchzuklicken. Der Endpunkt muss die Abmeldung ohne zusätzliche Interaktion abschließen.
Abonnenten-IDs schützen
Abmelde-URLs enthalten häufig ein empfängerspezifisches Token. Betrachten Sie die vollständige URL als potenziell geeignet, das Abonnement dieser Person zu ändern. Schwärzen oder ersetzen Sie das Token in einer allgemeinen Diagnosekopie, bewahren Sie die unberührte Nachricht privat auf und fügen Sie die Live-URL nicht in öffentliche Tickets oder automatische Abrufprogramme ein.
Schließen Sie mit einer expliziten Checkliste ab: Felder vorhanden, korrekte Syntax, Abdeckung der Signatur überprüft und autorisierter Endpunkttest abgeschlossen oder nicht durchgeführt. Die Berechtigung zum Massenversender des Anbieters und die Anzeige der Benutzeroberfläche zum Abbestellen sind separate Produktfragen. Eine Headerprüfung auf Standardebene garantiert nicht, dass ein Postfachanbieter eine bestimmte Schaltfläche anzeigt.
Melden Sie jede Ebene einzeln
Wenn Header vorhanden sind, die Signaturvalidierung jedoch nicht verfügbar ist, melden Sie nur einen strukturellen Befund. Wenn die Überprüfung erfolgreich ist, aber kein autorisierter Endpunkttest stattgefunden hat, lassen Sie das Verhalten ungetestet. Notieren Sie die genaue Endprobe und die für die nächste Schicht erforderlichen Nachweise.