सेशन क्या है?
सेशन किसी यूज़र और सर्वर के बीच एक अस्थायी कनेक्शन है, जो यूज़र के साइन इन करने के पल से लेकर साइन आउट करने या बहुत देर तक निष्क्रिय रहने तक की गतिविधि का हिसाब रखता है। यह वही तरीका है जिससे कोई वेबसाइट याद रखती है कि आप कौन हैं, जब आप पेजों के बीच जाते हैं, कार्ट में आइटम जोड़ते हैं या अपने अकाउंट में लॉग इन बने रहते हैं।
हर सेशन सर्वर के बनाए एक यूनीक सेशन ID से जुड़ा होता है।
यही ID वेबसाइट को आपकी सारी गतिविधियों को एक लगातार विज़िट में
जोड़ने देता है, बजाय इसके कि वह हर क्लिक को बिल्कुल नए
अजनबी की तरह समझे।
वेब पर सेशन क्या है?
सेशन डेटा का आदान-प्रदान करने वाले दो डिवाइस के बीच एक अल्पकालिक कड़ी है,
अक्सर किसी यूज़र का ब्राउज़र और एक वेब सर्वर। यह उसी पल शुरू हो जाता है जब
कोई यूज़र कोई एप्लिकेशन खोलता है या साइन इन करता है, और तब खत्म होता है जब
वह लॉग आउट करता है, टैब बंद करता है या सेशन टाइमआउट से ज़्यादा देर तक निष्क्रिय रहता है।
जब तक सेशन सक्रिय रहता है, सर्वर एक सेशन ID का उपयोग करके यह
हिसाब रखता है कि यूज़र कौन है और क्या कर रहा है। वह ID या तो ब्राउज़र
के अंदर किसी कुकी में सहेजा जाता है या फिर URL में ही। इसके बिना
सर्वर यूज़र को उसी पल भूल जाता जब वह अगले
लिंक पर क्लिक करता।
सेशन कैसे काम करता है?
सेशन चार आसान चरणों में काम करता है। पहला, यूज़र कोई वेबसाइट
या ऐप खोलता है और सर्वर एक नया सेशन बनाता है, साथ में एक
यूनीक सेशन ID भी। दूसरा, सर्वर वह ID ब्राउज़र को वापस भेजता है,
आम तौर पर एक छोटी कुकी के अंदर। तीसरा, ब्राउज़र हर अगली
रिक्वेस्ट के साथ वह सेशन ID जोड़ देता है, जिससे सर्वर को हमेशा
पता रहता है कि दूसरी तरफ़ कौन है। चौथा, जब यूज़र लॉग आउट करता
है या सेशन का टाइमआउट हो जाता है, तो सर्वर सेशन का डेटा नष्ट
कर देता है और वह ID बेकार हो जाता है।
यह पूरी प्रक्रिया मिलीसेकंड में होती है और यूज़र को दिखाई नहीं देती।
यही वजह है कि ऑनलाइन शॉपिंग, बैंकिंग और लॉग इन वाला कोई भी
अनुभव हर पेज पर पासवर्ड मांगे जाने के बजाय सहज
लगता है।
सेशन के प्रकार
इंटरनेट पर सेशन एक से ज़्यादा तरह के होते हैं, और यह शब्द
उस लेयर के हिसाब से थोड़ा अलग तरीके से इस्तेमाल होता है जिस पर वह मौजूद होता है।
- वेब सेशन। एक ही वेबसाइट के पेजों पर किसी यूज़र को ट्रैक करने के लिए इन्हें
वेब सर्वर बनाते हैं। जब कोई पूछता है कि सेशन क्या है, तो सबसे
आम मतलब यही होता है। - नेटवर्क सेशन। किसी नेटवर्क पर दो डिवाइस के बीच का कनेक्शन,
जिसे अक्सर OSI मॉडल की सेशन लेयर में बताया जाता है। TCP कनेक्शन
और TLS सेशन दोनों इसी में आते हैं। - लॉगिन सेशन। वह सेशन जो किसी यूज़र के अकाउंट में साइन इन
करने पर खुलता है, और जिसे अक्सर टोकन और टू-फ़ैक्टर ऑथेंटिकेशन से सुरक्षित किया जाता है। - प्रॉक्सी सेशन। किसी प्रॉक्सी सर्वर से होकर जाने वाला कनेक्शन।
कुछ प्रॉक्सी, स्टिकी सेशन का उपयोग करते हैं, जिनमें एक तय समय तक वही IP
बनाए रखा जाता है, और कुछ दूसरे हर रिक्वेस्ट पर IP बदल देते हैं। - एप्लिकेशन सेशन। डेस्कटॉप या मोबाइल ऐप के अंदर कामों के बीच
स्थिति याद रखने के लिए इनका उपयोग होता है, जैसे ड्राफ़्ट, सेटिंग या खुले
दस्तावेज़।
इन सबके पीछे विचार एक ही है: दो पक्षों के बीच एक अस्थायी, पहचानी जा सकने
वाली कड़ी, जो जितनी देर ज़रूरत हो उतनी देर बनी रहती है।
वेब सेशन का उपयोग क्यों किया जाता है?
इसका उपयोग इंटरनेट सिस्टम को यूज़र की गतिविधियों पर नज़र रखने में सक्षम बनाने के लिए किया जाता है। यह जानकारी सहेजने में मदद करता है, जैसे- लॉगिन की स्थिति, कार्ट में रखे आइटम या कोई और सेटिंग। इसके बिना वेबसाइट क्लिक के बीच कुछ भी याद नहीं रखेगी। यह इंटरनेट पर यूज़र के इंटरैक्शन का सहज प्रबंधन संभव बनाता है, ख़ासकर जब कई पेज इस्तेमाल किए जा रहे हों।
कुकी बनाम सेशन: अंतर
कुकी और सेशन को अक्सर एक-दूसरे से मिला दिया जाता है, क्योंकि
ये साथ काम करते हैं, लेकिन ये अलग-अलग जगहों पर रहते हैं। कुकी
यूज़र के डिवाइस पर ब्राउज़र में सहेजी गई एक छोटी फ़ाइल होती है।
सेशन सर्वर पर सहेजा गया डेटा होता है, और ब्राउज़र सिर्फ़ वह
सेशन ID रखता है जो उस तक पहुंचाता है।
कुकी ब्राउज़र बंद होने के बाद भी बनी रह सकती हैं और इन्हें कई
दिनों या सालों तक चलने के लिए सेट किया जा सकता है। सेशन आम तौर पर
कम समय के होते हैं और तब खत्म हो जाते हैं जब यूज़र लॉग आउट करता है,
टैब बंद करता है या निष्क्रियता का टाइमआउट पूरा हो जाता है। ज़्यादातर
आधुनिक वेबसाइटों में दोनों का उपयोग साथ-साथ होता है: एक सेशन कुकी
उस सेशन ID को लेकर चलती है, जबकि यूज़र का असली डेटा सर्वर पर सुरक्षित रहता है।
सेशन की सुरक्षा और हाईजैकिंग
चूंकि सेशन ID वही कुंजी है जो साबित करती है कि आप कौन हैं, इसलिए
जो कोई इसे चुरा ले, वह आपका रूप धर सकता है। इस हमले को
सेशन हाईजैकिंग कहा जाता है, और यह आम तौर पर असुरक्षित नेटवर्क पर
या ऐसे मैलवेयर के ज़रिए होता है जो ब्राउज़र से कुकी पढ़ लेता है।
सबसे आम बचाव हैं HTTPS एन्क्रिप्शन, जो सेशन ID को इंटरनेट पर
सफ़र करते समय छिपा देता है, और छोटे सेशन टाइमआउट, जो यह सीमित
कर देते हैं कि चुराया गया ID कितनी देर तक काम का रहता है। कई वेबसाइट
सेशन को यूज़र के IP पते या डिवाइस फ़िंगरप्रिंट से भी जोड़ देती हैं,
जिससे किसी और लोकेशन से इस्तेमाल की गई चुराई हुई कुकी अस्वीकार
कर दी जाती है। काम खत्म होने पर लॉग आउट करना, संवेदनशील अकाउंट
के लिए सार्वजनिक Wi-Fi से बचना और टू-फ़ैक्टर ऑथेंटिकेशन चालू करना
यूज़र की तरफ़ का ज़्यादातर जोखिम हटा देते हैं।
फ़ायदे और नुकसान
ये बहुत सुरक्षित होते हैं, क्योंकि ये डेटा सर्वर पर सहेजते हैं। अस्थायी जानकारी सहेजने के लिए ये बहुत अच्छे हैं। लेकिन ये सर्वर की मेमोरी का उपयोग करते हैं और बहुत तेज़ी से खत्म भी हो जाते हैं। फिर भी, जो वेब एप्लिकेशन कई रिक्वेस्ट संभालते हैं, उनके लिए सेशन काफ़ी ज़रूरी हैं, ख़ासकर नई तकनीकों के साथ।
उदाहरण
लॉगिन, शॉपिंग कार्ट और एडमिन डैशबोर्ड के सेशन
ये उदाहरण वेब पेजों पर गतिविधियों को ट्रैक करने के लिए सेशन ID का उपयोग करते हैं और साथ ही लॉग इन किए हुए यूज़र का कनेक्शन भी बनाए रखते हैं।
सेशन और प्रॉक्सी सर्वर
जब आप किसी प्रॉक्सी का उपयोग करते हैं, तो सेशन का अस्तित्व खत्म नहीं होता, उसमें बस
एक और हॉप जुड़ जाता है। रिक्वेस्ट ब्राउज़र से चलकर प्रॉक्सी तक जाती है,
और उसके बाद ही टारगेट सर्वर तक। वेबसाइट तब भी एक सेशन ID
बनाती है, लेकिन उसे आपके बजाय प्रॉक्सी का IP पता दिखता है।
यह दो स्थितियों में मायने रखता है। स्टिकी सेशन के साथ प्रॉक्सी आपके
सेशन को सौंपा गया वही IP कुछ मिनटों या घंटों तक बनाए रखता है,
और सोशल मीडिया अकाउंट, ई-कॉमर्स चेकआउट और बैंकिंग लॉगिन को
यही चाहिए। रोटेटिंग सेशन के साथ IP हर रिक्वेस्ट पर बदल जाता है,
जो स्क्रैपिंग, विज्ञापन सत्यापन और ऐसे किसी भी काम के लिए उपयोगी है
जिसमें हर रिक्वेस्ट स्वतंत्र दिखनी चाहिए। इन दोनों में से चुनना
रेजिडेंशियल प्रॉक्सी या मोबाइल प्रॉक्सी का प्लान लेते समय सबसे आम
फ़ैसलों में से एक है।
अक्सर पूछे जाने वाले सवाल
आसान शब्दों में सेशन का मतलब क्या है?
सेशन वह छोटी अवधि है जिसमें कोई यूज़र और कोई वेबसाइट जुड़े
रहते हैं, जो आम तौर पर लॉगिन से शुरू होती है और लॉगआउट पर खत्म होती है।
वेबसाइट इसका उपयोग पेज के क्लिक के बीच यूज़र को याद रखने के लिए करती है।
कंप्यूटर की भाषा में सेशन क्या है?
कंप्यूटिंग में सेशन दो सिस्टम के बीच डेटा का कोई भी अस्थायी
आदान-प्रदान है, जैसे किसी यूज़र और सर्वर के बीच, जिसकी शुरुआत और
अंत साफ़ होते हैं। वेब लॉगिन, वीडियो कॉल और डेटाबेस कनेक्शन
सभी सेशन हैं।
सेशन और सेशन ID में क्या अंतर है?
सेशन असल कनेक्शन और सर्वर पर सहेजा गया डेटा है। सेशन ID
सिर्फ़ वह छोटी स्ट्रिंग है जो उस कनेक्शन की पहचान करती है,
जिससे सर्वर को पता रहता है कि हर रिक्वेस्ट कौन-सा यूज़र
भेज रहा है।
सेशन कितनी देर चलता है?
ज़्यादातर वेब सेशन कुछ मिनट से लेकर कुछ घंटों तक चलते हैं,
और यह वेबसाइट की टाइमआउट सेटिंग पर निर्भर करता है। बैंकिंग वेबसाइट
5 से 15 मिनट के छोटे सेशन इस्तेमाल करती हैं, जबकि सोशल नेटवर्क
किसी सेशन को हफ़्तों तक खुला रख सकते हैं।
सेशन टाइमआउट क्या है?
सेशन टाइमआउट निष्क्रियता की वह अधिकतम अनुमत अवधि है जिसके बाद
सर्वर सेशन को अपने आप खत्म कर देता है। जब कोई यूज़र लॉग आउट
करना भूल जाता है, तब यह अकाउंट की सुरक्षा करता है।
स्टिकी सेशन क्या है?
स्टिकी सेशन पूरे सेशन के दौरान यूज़र को उसी सर्वर या उसी
प्रॉक्सी IP से जुड़ा रखता है। इसका उपयोग तब किया जाता है जब
एप्लिकेशन को निरंतरता चाहिए, जैसे किसी चेकआउट या कई चरणों वाले
लॉगिन के दौरान।
क्या कुकी के बिना सेशन काम कर सकता है?
हां। सेशन ID को URL के अंदर या किसी रिक्वेस्ट हेडर में भी
भेजा जा सकता है। कुकी बस इसे सहेजने का सबसे सुविधाजनक और
सबसे आम तरीका है।
