Bu biraz öznel bir soru, ancak bunu yapmak için artıları/eksileri duymak isterim. Quick and Dirty Feed Parser adlı açık kaynaklı bir projeyi yönetiyorum ve projenin amacı, .NET'teki RSS ve Atom beslemelerini tüketmek için mümkün olduğunca kusursuz hale getirmektir.UnsafeHeaderParsing öğesini varsayılan olarak etkinleştirmek kabul edilebilir bir uygulamadır mı?
Projenin geliştirilmesinde oldukça erken bir şekilde karşılaştığım sorunlardan biri, (Hacker News RSS feed) hatalı test edilmiş HTTP üstbilgileri ve .NET'teki HttpWebRequest sınıfı olarak kullandığım bazı beslemelerin kullanmasıydı. Bir GET isteğinde bu başlıklardan birini aldığınızda 1.1 ve üstü "güvenli olmayan başlık" istisnasını hemen atar.
Sorunum bu nedenle - "useUnsafeHeader" yapılandırma seçeneğini programsal olarak etkinleştirebilirim, ancak bu uygulamanın bağlamında TÜM HttpWebRequest'leri arasında çalışır. QD Feed Ayrıştırıcısından geçerli feed'leri kullanamadığından şikâyet eden kullanıcılara sahibim ve bu başlık sorununun nedeni budur.
Şu anda kitaplığımın, bunu kullanan geliştiricilerin kendileri için sorun olmadığını bilmelerine rağmen, güvensiz başlığın kendileri tarafından ayrıştırılmasını sağlamaları gerektiği için, bunları kullanmak için bir destek ek yükü oluşturacak şekilde kurulmuş bir şekilde oluşturdum. .
Hızlı ve Kirli Besleme Ayrıştırıcısını varsayılan olarak güvenli olmayan başlık ayrıştırmasını etkinleştirebilir ve güvenlikle ilgili kullanıcıları devre dışı bırakmaya zorlayabilirim; ancak güvenlik açısından daha iyi bir saldırıya sahip olmayan kullanıcıları açmak istemiyorum. . Burada en iyi seçenek nedir?
Sadece proje siteyi ziyaret etti ve siz (o besbelli değil) başka bir yerde "Gelişmiş Kullanımı" bu sorunu belgeledi olsa ilk sayfasında hayır "SSS" sayfa vardır fark ettim. Belgelerinizin öngörülebilir ve kolay bulunmasını sağlayın ayrıca sizi destek yükünden de koruyabilirsiniz. –