कुकीज़ क्या हैं? वेबसाइटें आपको कैसे याद रखती हैं
कुकी टेक्स्ट का एक छोटा सा टुकड़ा है जिसे कोई वेबसाइट आपके ब्राउज़र में सेव करने को कहती है, और फिर उस साइट पर हर बाद की विज़िट में वापस भेजती है। इसी तरह वेबसाइट आपको "याद" रखती है — कि आप लॉग इन हैं, आपके कार्ट में क्या है, आपने कौन सी भाषा चुनी। कुकीज़ केवल डेटा हैं, प्रोग्राम नहीं, लेकिन चूँकि वे आपकी पहचान कर सकती हैं, इसलिए वे सुरक्षा और गोपनीयता दोनों के लिए मायने रखती हैं।
AI से बनाते समय यह क्यों मायने रखता है
कुकीज़ उन कई फ़ीचर्स के नीचे होती हैं जो आप AI बिल्डर से माँगेंगे, अक्सर बिना "कुकी" शब्द आए:
- लॉगिन। ज़्यादातर वेब ऐप्स में "लॉग इन रहें" का मतलब एक सेशन कुकी होता है। वह कुकी कैसे कॉन्फ़िगर है, इससे तय होता है कि उसे चुराना कितना आसान है।
- कार्ट और पसंद। एक टोकरी जो पेज रीफ़्रेश होने पर भी बची रहे, अक्सर कुकी या ब्राउज़र storage पर निर्भर करती है।
- Analytics और विज्ञापन। Google Analytics, Meta pixel या चैट विजेट जोड़ने पर आम तौर पर दूसरी कंपनियों की कुकीज़ भी जुड़ जाती हैं।
- कानूनी सूचनाएँ। कई जगहों पर कुछ कुकीज़ के लिए विज़िटर की पहले सहमति चाहिए, और यहीं से कुकी बैनर आते हैं।
अगर आप जानते हैं कि आपका ऐप कौन सी कुकीज़ सेट करता है और क्यों, तो आप सुरक्षा सेटिंग्स, सहमति और अपनी गोपनीयता नीति के बारे में बेहतर फ़ैसले ले सकते हैं।
रोज़मर्रा की एक मिसाल
क्लोकरूम की टिकट के बारे में सोचें। आप अपना कोट देते हैं और बदले में एक नंबर वाली टिकट लेते हैं। टिकट में आपका कोट नहीं होता — बस एक नंबर। हर बार जब आप काउंटर पर लौटते हैं, आप टिकट दिखाते हैं, और कर्मचारी जानता है कि कौन सा कोट आपका है।
सेशन कुकी इसी तरह काम करती है। जब आप लॉग इन करते हैं, तो सर्वर अपनी ओर आपकी जानकारी रखता है और आपके ब्राउज़र को एक टिकट देता है — एक लंबा रैंडम ID। आपका ब्राउज़र हर अनुरोध के साथ वह टिकट दिखाता है, और सर्वर देखता है कि आप कौन हैं। जो कोई टिकट की नकल कर ले, वह कोट ले जा सकता है, इसीलिए लॉगिन कुकीज़ की सुरक्षा ज़रूरी है।
कुकी असल में कैसे काम करती है
- आप एक साइट खोलते हैं। सर्वर के जवाब में
Set-Cookie: session_id=8f3k...; HttpOnly; Secure; SameSite=Laxजैसा हेडर आता है। - आपका ब्राउज़र उसे उस साइट के डोमेन से जोड़कर सेव करता है।
- उसी साइट पर हर बाद के अनुरोध में, ब्राउज़र अपने-आप
Cookie: session_id=8f3k...जोड़ देता है। - सर्वर उसे पढ़ता है और जानता है कि यह आप हैं।
पेज की JavaScript भी कुकीज़ बना सकती है, लेकिन सबसे महत्वपूर्ण कुकीज़ — लॉगिन सेशन — सर्वर द्वारा सेट होनी चाहिए और JavaScript से छिपी होनी चाहिए।
कुकीज़ के प्रकार
| प्रकार | इसका मतलब | उदाहरण |
|---|---|---|
| सेशन कुकी | कोई expiry तारीख नहीं; ब्राउज़र सेशन खत्म होने पर मिट जाती है | एक छोटे समय वाला checkout चरण |
| स्थायी कुकी | expiry तारीख (Expires या Max-Age) होती है और रीस्टार्ट के बाद भी बची रहती है | "30 दिन तक मुझे याद रखें" |
| First-party | एड्रेस बार वाली साइट द्वारा सेट | उस साइट पर आपका लॉगिन |
| Third-party | पेज में एम्बेड किसी दूसरे डोमेन द्वारा सेट | एक विज्ञापन नेटवर्क की ट्रैकिंग ID |
| बिल्कुल ज़रूरी | उस सेवा के लिए आवश्यक जिसे उपयोगकर्ता ने माँगा | लॉगिन सेशन, शॉपिंग कार्ट |
| गैर-ज़रूरी | साइट मालिक के लिए अच्छी-सी, पर ज़रूरी नहीं | Analytics, विज्ञापन, A/B टेस्टिंग |
ब्राउज़रों ने third-party कुकीज़ पर लगातार पाबंदी लगाई है, क्योंकि उनका इस्तेमाल लोगों को वेबसाइटों पर ट्रैक करने के लिए होता है। कई बड़े ब्राउज़र अब डिफ़ॉल्ट रूप से उनमें से कई को ब्लॉक करते हैं, और इसके विवरण लगातार बदलते रहते हैं, इसलिए third-party कुकीज़ पर कुछ भी ज़रूरी न बनाएँ।
एक उदाहरण: एक छोटी ऑनलाइन दुकान
मान लीजिए आपने हाथ से बनी मोमबत्तियाँ बेचने की दुकान बनाई है। यहाँ वे कुकीज़ हैं जो एक समझदार संस्करण सेट करेगा, और क्यों।
session — जब मालिक या कोई ग्राहक लॉग इन करता है, तब सेट होती है। इसमें केवल एक रैंडम ID होता है; असली सेशन डेटा सर्वर रखता है। सेटिंग्स: HttpOnly (पेज की स्क्रिप्ट इसे नहीं पढ़ सकतीं), Secure (केवल HTTPS पर भेजी जाती है), SameSite=Lax (दूसरी साइटों से शुरू हुए ज़्यादातर अनुरोधों पर नहीं भेजी जाती)। बिल्कुल ज़रूरी।
cart_id — बिना लॉगिन वाले विज़िटर को उसकी टोकरी बनाए रखने देती है। यह एक ऐसे कार्ट की ओर इशारा करती है जो डेटाबेस में सेव है। बिल्कुल ज़रूरी, क्योंकि विज़िटर ने कार्ट में चीज़ें जोड़ने को कहा है।
theme — डार्क मोड याद रखती है। यह कुकी हो सकती थी, लेकिन इसे कभी सर्वर तक जाने की ज़रूरत नहीं होती, इसलिए ब्राउज़र का localStorage सरल है।
Analytics कुकीज़ — अगर आप analytics टूल लगाते हैं तो जुड़ती हैं। ये गैर-ज़रूरी हैं। EU और UK में इन्हें सेट होने से पहले आम तौर पर सहमति चाहिए, इसलिए analytics स्क्रिप्ट तब तक इंतज़ार करे जब तक विज़िटर "Accept" पर क्लिक न करे।
ध्यान दें कि दुकान कुकीज़ में क्या नहीं रखती: ग्राहक का नाम, पता या कार्ड विवरण। कुकीज़ हर अनुरोध के साथ यात्रा करती हैं और उपयोगकर्ता के डिवाइस पर रहती हैं, इसलिए उनमें ID होनी चाहिए, निजी डेटा नहीं।
आम शब्दों की व्याख्या
| शब्द | इसका मतलब |
|---|---|
| Cookie | एक छोटा name–value जोड़ा जिसे ब्राउज़र सेव करता है और साइट को वापस भेजता है। |
Set-Cookie | वह response हेडर जिससे सर्वर कुकी बनाता या अपडेट करता है। |
| Session | लॉग इन उपयोगकर्ता का सर्वर का रिकॉर्ड, जो एक कुकी ID से जुड़ा है। |
HttpOnly | पेज की JavaScript को कुकी पढ़ने से रोकता है, जिससे injected स्क्रिप्ट्स से नुकसान सीमित होता है। |
Secure | कुकी केवल एन्क्रिप्टेड HTTPS कनेक्शन पर भेजी जाती है। |
SameSite | नियंत्रित करता है कि दूसरी साइटों के अनुरोधों पर कुकी भेजी जाए या नहीं (Strict, Lax या None)। |
Expires / Max-Age | कुकी कब मिटनी चाहिए। |
| Domain / Path | साइट के किन पतों को कुकी मिलती है। |
| localStorage | ब्राउज़र storage जिसे पेज का कोड पढ़ सकता है, पर जो अपने-आप सर्वर को नहीं भेजा जाता। |
| XSS | Cross-site scripting: आपके पेज में चलने वाली हमलावर की स्क्रिप्ट, जो डेटा चुराने की कोशिश कर सकती है। |
| CSRF | Cross-site request forgery: कोई दूसरी साइट ब्राउज़र को आपकी कुकीज़ के साथ अनुरोध भेजने के लिए बहका देती है। |
| Cookie consent | गैर-ज़रूरी कुकीज़ सेट करने से पहले विज़िटर से अनुमति माँगना। |
आम गलतियाँ और गलत धारणाएँ
- "कुकीज़ वायरस हैं।" वे सादा टेक्स्ट हैं। वे आपके कंप्यूटर पर कोड नहीं चला सकतीं।
- कुकीज़ में संवेदनशील डेटा रखना। एक रैंडम ID रखें और विवरण सर्वर पर रखें।
- localStorage में लॉगिन टोकन। पेज पर चलने वाली कोई भी स्क्रिप्ट localStorage पढ़ सकती है, injected स्क्रिप्ट भी।
HttpOnlyकुकी को पेज की स्क्रिप्ट बिल्कुल नहीं पढ़ सकतीं। SecureऔरHttpOnlyका गायब होना। ये दो फ़्लैग सस्ते हैं और आम छेद बंद करते हैं।- मान लेना कि बैनर सब कुछ कवर करता है। अगर कोई "Accept" दबाने से पहले analytics लोड होता है, तो बैनर अपना काम नहीं कर रहा।
- लॉगआउट भूल जाना। लॉगआउट पर कुकी मिटनी चाहिए और सर्वर पर सेशन खत्म होना चाहिए, ताकि नकल की गई कुकी काम करना बंद कर दे।
- "अगर मैं कुकीज़ इस्तेमाल नहीं करता, तो गोपनीयता नियम लागू नहीं होते।" GDPR जैसे नियम निजी डेटा को कवर करते हैं, चाहे वह कहीं भी सेव हो — local storage, डिवाइस फ़िंगरप्रिंट और सर्वर लॉग सहित।
अपने AI बिल्डर से क्या माँगें
- "ऐप जो भी कुकी सेट करता है उसकी सूची दें, वह किस काम की है, कितने समय तक रहती है, और क्या वह बिल्कुल ज़रूरी है।"
- "लॉगिन सेशन के लिए
HttpOnly,Secure,SameSite=Laxवाली कुकी इस्तेमाल करें। auth टोकन localStorage में न रखें।" - "कुकी में केवल एक रैंडम सेशन ID रखें; सेशन डेटा सर्वर पर रखें।"
- "लॉगआउट पर कुकी साफ़ करें और सर्वर पर सेशन अमान्य करें।"
- "Analytics या मार्केटिंग स्क्रिप्ट तब तक लोड न करें जब तक विज़िटर उन्हें स्वीकार न करे, और उसकी पसंद याद रखें।"
- "गोपनीयता नीति में ऊपर की सूची से मेल खाता एक सरल कुकी सेक्शन जोड़ें।"
सहमति वाले हिस्से के लिए, कुकी सहमति कैसे जोड़ें देखें। लॉगिन में कुकीज़ कैसे फ़िट होती हैं, इसके लिए authentication क्या है पढ़ें।
Mythex में कुकीज़
Mythex आपके ऐप के उपयोगकर्ताओं के लिए बना-बनाया लॉगिन नहीं देता, इसलिए आपके ऐप द्वारा सेट कुकीज़ उसके अपने कोड और आपके जोड़े गए टूल्स से आती हैं — उदाहरण के लिए, आपके चुने गए auth तरीके से एक सेशन कुकी। चैट में एजेंट से उन्हें सूचीबद्ध करने, उनकी सेटिंग्स कड़ी करने, या सहमति बैनर जोड़ने को कहें, और प्रकाशित करने से पहले नतीजा लाइव प्रीव्यू में जाँचें। ऐप में लॉगिन जोड़ना वाला docs रेसिपी एक अच्छा शुरुआती प्रॉम्प्ट है, और आपके बनाए ऐप की सुरक्षा बताती है कि keys और secrets को ब्राउज़र से बाहर कैसे रखें।
सवाल
वेबसाइट पर कुकी क्या है?
कुकी टेक्स्ट का एक छोटा सा टुकड़ा है जिसे वेबसाइट आपके ब्राउज़र से सेव करने को कहती है। ब्राउज़र उसे उस साइट के हर बाद के अनुरोध के साथ वापस भेजता है, जिससे साइट बातें याद रख पाती है, जैसे आप लॉग इन हैं या नहीं, या आपके कार्ट में क्या है।
क्या कुकीज़ खतरनाक हैं?
कुकीज़ केवल डेटा हैं, प्रोग्राम नहीं, इसलिए वे कोड नहीं चला सकतीं और कंप्यूटर को संक्रमित नहीं कर सकतीं। चिंता गोपनीयता की है, जब third-party कुकीज़ आपको कई साइटों पर ट्रैक करती हैं, और सुरक्षा की है, जब लॉगिन कुकी चुराकर आपकी नकल करने के लिए इस्तेमाल की जाती है।
first-party और third-party कुकीज़ में क्या अंतर है?
first-party कुकी वह है जो एड्रेस बार वाली साइट खुद सेट करती है, जैसे लॉगिन कुकी। third-party कुकी वह है जो पेज में एम्बेड किसी दूसरे डोमेन, जैसे विज्ञापन नेटवर्क, द्वारा सेट होती है, और अक्सर इसका इस्तेमाल आपको कई साइटों पर फ़ॉलो करने के लिए होता है।
क्या मुझे कुकी बैनर चाहिए?
यह इस पर निर्भर करता है कि आपके उपयोगकर्ता कहाँ हैं और आप कौन सी कुकीज़ इस्तेमाल करते हैं। EU और UK में, गैर-ज़रूरी कुकीज़ जैसे analytics या विज्ञापन के लिए आम तौर पर पहले सहमति चाहिए, जबकि सेवा के लिए बिल्कुल ज़रूरी कुकीज़, जैसे लॉगिन सेशन, आम तौर पर नहीं। अपने ऊपर लागू नियम जाँचें।
कुकीज़ और localStorage में क्या अंतर है?
दोनों ब्राउज़र में डेटा सेव करते हैं। कुकीज़ हर अनुरोध के साथ अपने-आप सर्वर को भेजी जाती हैं, जो लॉगिन के लिए ठीक है। localStorage ब्राउज़र में ही रहता है और उसे केवल पेज का अपना कोड पढ़ता है, जो थीम जैसी पसंद के लिए ठीक है।