X-Content-Type-Options: nosniff nedir?
Kısa cevap
X-Content-Type-Options: nosniff, tarayıcıya yanıtın Content-Type header'ında bildirilen türe uymasını ve MIME sniffing yapmamasını söyleyen yanıt header'ıdır; MIME sniffing, tarayıcının türü yanıtın içeriğine bakarak kendisinin belirlemesidir. Böylece örneğin metin ya da görsel olarak sunulan bir dosyanın tarayıcıda script ya da stil olarak çalıştırılması engellenir. TR7'de Manage HTTP Security Headers aksiyonunun Response Headers listesinde X-Content-Type-Options ("nosniff") seçildiğinde header nosniff değeriyle Kurum Servisinden gelen yanıtlara eklenir. Kurum Servisi header'ı zaten gönderiyorsa mevcut header silinmez, yanına ikinci bir X-Content-Type-Options eklenir.
TR7'de Nerede Kullanılır
| Nerede | Alan / etiket | Ne için |
|---|---|---|
| Load Balancer → Actions (Policy Actions) → Manage HTTP Security Headers formu | Response Headers → X-Content-Type-Options ("nosniff") | MIME sniffing'i engelleme |
| Load Balancer → Load Balancer vService List → HTTP vService formu | Actions | Aksiyonu vService'e bağlama |
Tarayıcıların nosniff'e uyma kuralı (script ve stil yanıtlarında türün eşleşmesi) WHATWG Fetch Standard'ta tanımlıdır.
Sık Karıştırılan Noktalar
- "nosniff yanlış Content-Type'ı düzeltir." Düzeltmez; Content-Type yanlışsa tarayıcı içeriği doğru yorumlamayabilir, script ya da stil yüklenmeyebilir. Kurum Servisinin doğru türü göndermesi gerekir.
- "Header TR7'nin ürettiği yanıtlara da eklenir." Aksiyon yalnızca Kurum Servisinden gelen yanıtlara uygulanır; engelleme ve hata sayfaları bu header'ı almaz.
- "Kurum Servisi header'ı gönderiyorsa TR7 değeri değiştirir." X-Content-Type-Options mevcut header'ın yerine yazılmaz, ikinci bir header eklenir (mevcut başlıkların üzerine yazılması); Kurum Servisi zaten gönderiyorsa seçeneğin işaretlenmesi gerekmez.
Dokümantasyonda nasıl yapılır
