Bir mesajın geçerli bir değeri olabilir DKIM imzası abonelikten çıkma alanları imzasızken. Bu anlamlı bir boşluktur: Mesajı doğrulayan alıcının, reklamı yapılan devre dışı bırakma eylemini mutlaka doğrulamamış olması gerekir. İmzanın kapsamını inceleyin, yalnızca genel bir kapsamı değil DKIM geçiş etiketi.
İşlemi koruyan imzayı bulun
RFC 8058 en az bir geçerli DKIM imzası gerektirir List-Unsubscribe ve List-Unsubscribe-Post . Her iki alan da söz konusu geçerli imzanın h= etiketinde görünmelidir. Gerekli imzanın eksik olması, alıcının spesifikasyon kapsamında tek tıkla abonelikten çıkma teklifinde bulunmamasının bir nedenidir. RFC 8058 bölüm 4.
Bir mesaj birden fazla imza taşıyabilir. Birinin geçerliliğini diğerinin başlık kapsamıyla birleştirmeyin ve çifti yeterli olarak adlandırmayın. Gerekli alanları kapsayan tek bir geçerli imza belirleyin ve ardından imzalayanı koruyun, seçici ve doğrulama sonucu. Bu, hangi imzanın katkıda bulunduğunu kontrol etmekten farklıdır. DMARC hizalama.
Başlıkları ilgili imzalama adımından önce yerleştirin
Mesaj oluşturma hattını eşleyin: uygulama şablonu, liste işleme, ağ geçidi dönüşümleri, imzalayan ve son giden rota. Bir hizmet, imzalandıktan sonra abonelikten çıkma alanlarını eklerse, daha önceki bir imza, bunları kapsamadan geçerli kalabilir. Düzeltme, alanları uygun imzanın önüne yerleştirmek veya daha sonra geçerli bir imzanın bunları kapsamasını sağlamaktır.
Gönderilen son mesajı okuyun. RFC 6376 tekrarlanan alan adlarının nasıl işleneceği de dahil olmak üzere h= listesi ve başlık seçim kurallarını tanımlar. Mesajın herhangi bir yerinde "liste-abonelikten çık" şeklinde yapılan dize araması bir kapsam testi değildir. Yinelenen alanlar ve dönüşümler, gerçek imza girişinin dikkatli bir şekilde incelenmesini gerektirir. RFC 6376 bölüm 3.5 ve 5.4.
İmzalı ve imzasız değişiklikleri ayırt etme
Aksi takdirde geçerli imzası her iki abonelikten çıkma alanını da kapsayan kontrollü bir test mesajı düşünün. İmzalı URI'yi farklı bir değere değiştirmek imzalı girişi değiştirir; normal DKIM doğrulaması altında, orijinal imza artık değiştirilen girişi doğrulamaz. Buna karşılık, her iki alanı da içermeyen bir imza, imzasız değerler değiştikten sonra da geçerli kalabilir. Bu, genel bir geçişin neden her alanda kimlik doğrulaması yapamadığını açıklar.
Bunlar, yürütülen bir şifreleme donanımı değil, protokole dayalı beklentilerdir. Gerçek bir yetkili mutasyon testinin tam orijinal baytlara, seçilen imzaya ve doğru doğrulama anahtarına ihtiyacı vardır. Enjekte edilen bir test anahtarı, genel DNS kaynağını veya geçmiş alma sonucunu değil, yalnızca o testin kriptografik ilişkisini gösterir. Orijinali koruyun ve ayrı bir kopyayı değiştirin.
İmzalı yolun tamamını kontrol edin
Kapsamı düzelttikten sonra, yetkili bir test mesajını amaçlanan rota üzerinden yeniden gönderin ve alıcı tarafta doğrulayın. Bağlantının yeniden yazılması, ağ geçidi düzenlemeleri veya daha sonraki bir liste işlemcisi kapsanan alanı değiştirebilir. Sahibinin doğrulamanın farklılaştığı ilk aşamayı bulabilmesi için mümkün olduğunda ön dönüşüm ve son numuneleri saklayın.
Alanları h=. Bu, RFC 8058 gereksinimi karşılanmadan kalırken imzanın korunmasını kolaylaştırabilir. Bir ağ geçidinin eylemi dönüştürmesi gerekiyorsa, son imzalama sınırını koordine edin ve dönüştürülen URI'nin hâlâ doğru alıcıya ve listeye eşleştiğinden emin olun.
Operasyonel kontrolü tamamlayın
İmza kapsamı, reklamı yapılan alanların kimliğini doğrular; uç noktanın istenen engellemeyi gerçekleştirdiğini kanıtlamaz. POST'u ve aşağı akış sonraki gönderim hariç tutmasını ayrı ayrı test etmek için kontrollü bir abonelik kullanın. Tersine, çalışan bir uç nokta eksik imza kapsamını onarmaz.
Kapanış kaydı, geçerli kapsayan imzayı, kesin nihai mesajı, uç nokta kapsamını ve gözlemlenen gizleme sonucunu tanımlamalıdır. Sağlayıcı kullanıcı arayüzü ekranını, doğru imzalamanın vaat edilen bir sonucu yerine ayrı bir gözlem olarak tutun.
İmzaya özgü bir kapanış kaydını tutun
Söz konusu imzaya ilişkin son mesajı, imzalayanı, seçiciyi, kapsanan iki alanı ve doğrulama sonucunu kaydedin. Uç nokta ve bastırma sonuçlarını ayrı ayrı kaydedin. Daha sonraki bir ağ geçidi alanları değiştirirse, gerekli kapsamı düşürmek yerine imzalama sınırını onarın.