के साथ पोस्ट अनुरोधों के लिए सीओआरएस में कोई प्रीफलाइट क्यों नहीं है I CORS POST अनुरोधों के सुरक्षा पहलुओं के बारे में थोड़ा उलझन में हूं। मुझे पता है कि इस विषय के बारे में ऑनलाइन जानकारी खो गई है, लेकिन मुझे अपने प्रश्नों का एक निश्चित उत्तर नहीं मिला।मानक सामग्री-प्रकार
यदि मैं इसे सही ढंग से समझता हूं, तो समान मूल नीति का लक्ष्य सीएसआरएफ हमलों को रोकने के लिए है और सीओआरएस का लक्ष्य संसाधन साझाकरण को सक्षम करना है (और केवल अगर) सर्वर होस्ट किए गए एप्लिकेशन के साथ अपना डेटा साझा करने के लिए सहमत है अन्य साइटों (उत्पत्ति)।
HTTP निर्दिष्ट करता है कि POST अनुरोध 'सुरक्षित' नहीं हैं, यानी वे सर्वर की स्थिति बदल सकते हैं, उदा। एक नई टिप्पणी जोड़कर। HTTP विधि POST के साथ एक CORS अनुरोध शुरू करते समय, ब्राउज़र केवल 'सुरक्षित' प्रीफलाइट अनुरोध करता है यदि अनुरोध की सामग्री-प्रकार गैर-मानक (या यदि गैर-मानक http शीर्षलेख हैं)। तो मानक सामग्री-प्रकार और मानक शीर्षलेखों के साथ POST अनुरोध निष्पादित किए जाते हैं और सर्वर पर नकारात्मक दुष्प्रभाव हो सकते हैं (हालांकि प्रतिक्रिया अनुरोध स्क्रिप्ट के लिए पहुंच योग्य नहीं हो सकती है।)
एक यादृच्छिक टोकन जोड़ने की यह तकनीक है प्रत्येक फॉर्म, जिसे सर्वर को तब हर गैर-एफ़ेफ़ के अनुरोध का हिस्सा बनने की आवश्यकता होती है। एक स्क्रिप्ट एक अनुरोध बनाने के लिए कोशिश करता है, यह या तो
- यादृच्छिक टोकन नहीं है और सर्वर अनुरोध में गिरावट आती है, या
- यह प्रपत्र जहां यादृच्छिक टोकन परिभाषित किया गया है का उपयोग करने की कोशिश करता है। यादृच्छिक टोकन के साथ इस प्रतिक्रिया में उपयुक्त हेड फ़ील्ड होना चाहिए, जैसे ब्राउज़र इस प्रतिक्रिया में बुरा स्क्रिप्ट पहुंच प्रदान नहीं करता है। इसके अलावा इस मामले में प्रयास विफल रहता है।
मेरा निष्कर्ष यह है कि मानक सामग्री-प्रकार और शीर्षलेखों के साथ जाली पोस्ट अनुरोधों के खिलाफ एकमात्र सुरक्षा ऊपर वर्णित तकनीक है (या एक समान)। किसी भी अन्य गैर-अक्षम 'अनुरोध जैसे कि पुट या डिलीट, या जेसन-सामग्री के साथ एक पोस्ट के लिए, तकनीक का उपयोग करने की आवश्यकता नहीं है क्योंकि सीओआरएस एक' सुरक्षित 'विकल्प अनुरोध करता है।
सीओआरएस के लेखकों ने प्रीफलाइट अनुरोधों से इन पोस्ट छूट को क्यों छोड़ दिया और इसलिए ऊपर वर्णित तकनीक को नियोजित करने के लिए इसे आवश्यक बना दिया?
दरअसल, हमने पोस्ट की अनुमति दी क्योंकि '