क्या HTTP हेडर के माध्यम से एक्सेस टोकन प्रसारित करना सुरक्षित है?


11

यह पहली RESTful वेब सेवा है और मैं सुरक्षा मुद्दों के बारे में चिंतित हूं। क्या HTTP हेडर के माध्यम से मेरे एक्सेस टोकन को प्रसारित करना सुरक्षित है? उदाहरण के लिए:

POST /v1/i/resource HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Api-key: 5cac3297f0d9f46e1gh3k83881ba0980215cd71e
Access_token: 080ab6bd49b138594ac9647dc929122adfb983c8

parameter1=foo&parameter2=bar

कनेक्शन खत्म हो गया SSL। इसके अलावा, क्या scopeहर के लिए विशेषता के रूप में परिभाषित किया जाना चाहिएaccess token

जवाबों:


12

यदि आप HTTP के माध्यम से एक्सेस टोकन हेडर प्रसारित करते हैं, तो यह मैन-इन-मिडिल हमले के लिए असुरक्षित होगा।

जब आप HTTPS के माध्यम से एक्सेस टोकन हेडर ट्रांसमिट करते हैं, तो क्लाइंट के अलावा कोई भी इस टोकन को नहीं देख पाएगा, क्योंकि अनुरोध सुरक्षित कनेक्शन के माध्यम से ट्यून किया जाएगा।


4
एक मैला ग्राहक SSL के साथ भी MITM हमलों के लिए असुरक्षित हो सकता है।
ott--

क्या आप कृपया एक उदाहरण प्रदान कर सकते हैं?
कोडर

यदि आप क्लाइंट को नियंत्रित नहीं करते हैं, तो आप क्लाइंट साइड सुरक्षा की गारंटी नहीं दे सकते, लेकिन यह किसी भी चीज़ के बारे में सच है।
मैट

2
@CodeWorks अधिकांश ब्राउज़र उपयोगकर्ता को HTTPS संसाधन से कनेक्ट करने का अवसर प्रदान करेंगे, भले ही SSL प्रमाणपत्र संसाधन के लिए गलत हो। यह, यकीनन, ब्राउज़र के लेखकों में से एक है, और यह अनिवार्य रूप से MITM हमलों को स्वीकार करने की पेशकश कर रहा है।
रॉस पैटरसन

1
@ फिर उस विशिष्ट MITM प्रमाणपत्र को ग्राहकों की मूल प्रमाणपत्र सूची में जोड़ा जाना चाहिए। अन्यथा आपने HTTPS चेतावनी को एक शाब्दिक "क्राय वुल्फ" के रूप में चेतावनी दी है कि दोनों ए) आपके उपयोगकर्ताओं को हमेशा के लिए इसे अनदेखा करने के लिए प्रशिक्षित करते हैं, बी) एक वास्तविक, दुर्भावनापूर्ण एमआईटीएम हमले के अलावा बताने के लिए मुश्किल (ए के कारण असंभव) है।
निक टी

8

Http हेडर पर पहुँच टोकन को स्थानांतरित करने में कोई गंभीर समस्या नहीं है क्योंकि एसएसएल का उपयोग किए जाने पर स्थानांतरित डेटा एन्क्रिप्ट किया गया है, इसका मतलब यह है कि इसे केवल विशेष क्लाइंट द्वारा ही समझा जा सकता है, जिसने अनुरोध किया और अनुरोध के लिए प्रतिक्रिया देने वाले सर्वर, बीच में कोई संभावना नहीं है। किसी भी तीसरे पक्ष द्वारा डेटा को समझें।

अन्य चीजें access tokenसमय आधारित हैं इसलिए उनके पास एक विशिष्ट अवधि के लिए जीवन है, इसलिए भविष्य में उनके उपयोग की कोई संभावना नहीं है।


-1

विचार करने वाली बात कैशिंग भी है।

आपका बैकएंड एक ही GET / POST मापदंडों के साथ एक ही URL पर कई कॉल देख सकता है, लेकिन एक अलग हेडर एक्सेस टोकन और विचार सामग्री किसी भी बॉडी को कैश और जब्त कर सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.