2011-12-17 2 views
7

कुकीज (क्लाइंट साइड) या सत्र (सर्वर साइड) में उपयोगकर्ताओं में फेसबुक स्टोर जैसी वेबसाइटें लॉग इन की गईं? मेरे परीक्षण इंगित करते हैं कि वे पहले करते हैं।कुकीज़ या सत्र में उपयोगकर्ताओं में फेसबुक स्टोर जैसी वेबसाइटें लॉग इन की गईं?

+0

यदि वे कुकी में लॉग इन की गई जानकारी को संग्रहीत करेंगे, तो वे सभी किसी ऐसे व्यक्ति के रूप में लॉग इन कर सकते हैं जो वे नहीं हैं। तो यह * शायद * नहीं है;) –

+0

सत्रों को अक्सर कुकी में संग्रहीत यादृच्छिक मान से बंद कर दिया जाता है। कुकी में आमतौर पर परिणाम का कोई पहचाना जाने वाला डेटा नहीं होगा, और यदि ऐसा होता है, तो इसे किसी अन्य माध्यम से सर्वर-साइड मान्य किया जाएगा। –

+0

कुकीज अद्वितीय आईडी स्टोर करते हैं।प्रमाणीकरण के लिए सर्वर इस अद्वितीय आईडी का उपयोग करें। –

उत्तर

12

आम तौर पर, संवेदनशील जानकारी जो की तरह उपयोगकर्ता वर्तमान में में लॉग ऑन है सर्वर साइड पर संग्रहीत किया जाना चाहिए - याद है, कुकीज़ स्वतंत्र रूप से पढ़ सकते हैं और उपयोगकर्ता द्वारा बदला जा सकता है।

जो आप शायद देख रहे हैं वह सत्र कुकी है जो किसी विशिष्ट क्लाइंट से सर्वर पर एक विशिष्ट सत्र से संबंध रखती है - इसलिए सर्वर जानता है कि कौन सा सत्र आपके लिए उपयोग करेगा। इस मामले में, कुकी में एकमात्र चीज एक लंबी, यादृच्छिक सत्र आईडी है - यह लंबी और यादृच्छिक है इसलिए इसे आसानी से हमलावर द्वारा अनुमानित नहीं किया जा सकता है।

किसी अन्य उपयोगकर्ता की सत्र कुकी चोरी करने का कार्य session hijacking कहा जाता है।

अतिरिक्त जानकारी:

+0

धन्यवाद पेक्का ... लेकिन क्या आप आगे समझा सकते हैं ... मैंने सोचा कि सर्वर पर एक सत्र एक फाइल है ... आपको दोनों की आवश्यकता क्यों होगी? – jon

+1

कुकीज़ को एन्क्रिप्ट किया जा सकता है और संशोधित या पढ़ने से बचने के लिए चेकसम का उपयोग किया जा सकता है: पी – Esailija

+0

@ जेन सत्र कैसे काम करते हैं (उदाहरण के लिए PHP मैनुअल में सत्र अध्याय में) पढ़ें। यह जानने के लिए कि किस उपयोगकर्ता के पास सत्र है, कुकी के लिए कुकी आवश्यक है। –

2

में Session chapter वे एक कुकी के साथ सर्वर साइड सत्र का उपयोग करें।

कुकी में एक आईडी है, यह आईडी फेसबुक पर भेजी जाती है और सर्वर उस आईडी के साथ सत्र के विवरण की जांच करता है।

+0

धन्यवाद रिचर्ड, लेकिन उन्हें सत्र की आवश्यकता क्यों है? .. जब हम सत्रों के बारे में बात कर रहे हैं तो हम इस बारे में बात कर रहे हैं उदाहरण के लिए: $ _SESSION ['user'] – jon

4

मुझे लगता है कि $_sessions के पीछे विचार यह है कि सर्वर से थोक जानकारी प्राप्त करने के बजाय सर्वर अपनी जानकारी को संसाधित करने के लिए बहुत तेज़ और कुशल है।

इस तरह से इसे देखो:

आप (सर्वर) और एक दोस्त (ग्राहक) अपने अन्य दोस्त सिंडी के बारे में गपशप कर रहे हैं, तो आप दोस्त आप जानकारी के हर विस्तार उसके बारे में बालों का रंग देता है (, ऊंचाई , आदि...)? नहीं, यह समय बर्बाद होगा। आपके लिए सिंडी के बारे में पहले से ही जानकारी को संसाधित करने के लिए यह बहुत तेज़ है ($_session फ़ाइल, सर्वर-साइड पर) और केवल अपने मित्र (क्लाइंट) से अद्वितीय जानकारी ($_cookies) प्राप्त करें।

कुशल: "अरे, क्या आपने सुना कि सिंडी ने कल रात क्या किया?"

कुशल नहीं: "अरे, क्या आपने सुना है कि ब्राउन हेयर, नीली आंख, मध्यम निर्माण आदि के साथ सिंडी क्या है ... पिछली रात?"

जाहिर है, यह $_sessions और $_cookies को पूरी तरह सारांशित नहीं करता है, लेकिन हो सकता है कि यह किसी को कुशल अल्पकालिक डेटा प्रबंधन को समझने में सहायता करेगा।

0

वे probalby सत्रों का उपयोग और फिर कुकीज़, जैसे, user_id साथ session_id = .../में लॉग ऑन है में कुछ जानकारी संगृहीत तो उस session_id के लिए सत्र में जाँच देखने के लिए कि उपयोगकर्ता अभी भी में लॉग ऑन है। मैं इसे लगता है संसाधनों का अपशिष्ट है। मेरी राय में मैं कुकीज़ में महत्वपूर्ण जानकारी संग्रहीत करता हूं और कुकीज़ में बड़ी जानकारी