Geliştiriciler Neden CORS'u Anlamıyor
CORS, web geliştirmede en çok yanlış anlaşılan güvenlik araçlarından biridir. Birçok geliştirici onun sunucularını koruduğunu düşünür. Öyle değildir.
CORS kullanıcıyı korur.
Tarayıcı, Same-Origin Policy (SOP) politikasını uygular. Bu politika, kötü niyetli bir sitenin sizin adınıza başka bir siteye istek göndermesini engeller. CORS, sadece bir sunucunun tarayıcıya, belirli siteler için bu kuralı esnetmesini söyleme yöntemidir.
Eğer isteğiniz Postman'de çalışıyor ancak tarayıcıda başarısız oluyorsa, bir CORS sorununuz var demektir. Postman bir tarayıcı değildir, bu nedenle bu kuralları uygulamaz.
Kaçınmanız gereken yaygın hatalar:
- CORS'u tek güvenlik önlemi olarak kullanmak. CORS bir kimlik doğrulama (authentication) yöntemi değildir. Hâlâ token'lara, şifrelere ve hız sınırlamasına (rate limiting) ihtiyacınız vardır.
- Wildcard tuzağı. Çerez (cookie) veya kimlik bilgileri (credentials) göndermeniz gerekiyorsa
Access-Control-Allow-Origin: *kullanamazsınız. Tam domain adını listelemeniz gerekir. - Preflight isteklerini