Transcript for:
JWT Tokens Complete Guide

हां जी कैसे हैं आप सभी स्वागत है आप सभी का चाय और कोड में और अगर नए हो चैनल पे तो फटाफट से सब्सक्राइब कर दो और हमारा कमेंट टारगेट है 500 कमेंट्स का तो क्या है यह वीडियो आपने टाइटल थंबनेल देख ही लिया होगा यह वीडियो है कंप्लीट गाइड जेडब्ल्यू t या फिर जेडब्ल्यू t टोकेंस के बारे में इस वीडियो के एंड तक आपको कंप्लीट नॉलेज होगी कि जेडब्ल्यू क्या होता है कैसे यह सेश से अलग होता है कौन सा बेटर है जेडब्ल्यू या सेशंस जितनी भी आपके क्वेश्चंस हैं क्वेरीज हैं क्या ये सेफ है क्या नहीं सेफ है कौन इसको यूज करता है कैसे इसको यूज करते हैं क्या इंटरनल मैकेनिज्म है इसका सब कुछ इन डेप्थ में जानेंगे वीडियो थोड़ा सा लंबा होगा ओबवियस सी बात है लेकिन इस वीडियो के बाद एक ही प्रॉमिस है कि आपको और कोई वीडियो नहीं देखना पड़ेगा जो आपको जेडब्ल्यू t के बारे में बताए हालांकि जेडब्ल्यू t मैंने कवर करे थे मेरे बैक एंड के सीरीज में बट वहां पे जस्ट हमने इंप्लीमेंटेशन देखा था प्रैक्टिकल गाइड देखी थी ये वीडियो थोड़ा सा थोरेट्स तरह से जेडब्ल्यू को आपको अ यूज करना चाहिए इंप्लीमेंट करना चाहिए और आपके जितने भी एफ क्यूज हैं इसके बारे में वो मैं बताऊंगा जब मैं अभी रिसेंटली बैंगलोर गया तो ये रिक्वेस्ट काफी हाई थी कि इस टॉपिक पे वीडियोस तो बनाइए तो यह वीडियो उसी के बारे में है तो पहले आपको बताता हूं किस तरह से हमारा ओवरव्यू चलेगा इस पूरे वीडियो का उसके बाद मैं वापस से यहां आऊंगा थोड़ी सी हम डिस्कस और चर्चा करेंगे कुछ छोटे-मोटे कांसेप्ट हैं उनके बारे में भी देखेंगे तो हमारे पास ये है कुछ नोट्स जेडब्ल्यू t क्या होते हैं आपके कॉमन एफ क्यूज मैंने यहां लिख रखे हैं उसके बाद हम ऑथेंटिकेशन वर्सेस ऑथराइजेशन देखेंगे थोड़ा सा जेडब्ल्यू t वर्सेस सेशंस देखेंगे इसके अलावा हमारे पास कुछ डायग्राम्स हैं इन डायग्राम्स को भी हम इस तरह से देखेंगे कि सेशंस और टोकन में क्या डिफरेंस होता है वह भी देखेंगे उसके बाद जेडब्ल्यू की वेबसाइट पे जाके भी थोड़ा सा एक्सप्लोरेशन करेंगे डॉक्यूमेंटेशन देखेंगे कि क्या है वेबसाइट क्या है यह आरएफसी स्टैंडर्ड किस तरह से यूज़ होता है और किस तरह से एक जेडब्ल्यू पूरा कंप्लीट क्रिएट होता है क्या इसके एडवांटेज है डिसएडवांटेज है क्या है यह आईईटी और क्या है यह नेम सब ये सारी चीजें हम देखेंगे उसके अलावा कुछ इंप्लीमेंटेशन पे भी हल्की सी चर्चा करेंगे कि कैसे हमारे पास जेसन वेब टोकेंस अवेलेबल होते हैं एनपीएम के अंदर जंगो के अंदर रूबी ऑन रेल्स के अंदर या कोई भी आप फ्रेमवर्क यूज करते हैं सभी जगह अवेलेबल है तो स्टार्ट करेंगे हम यहां से अब इससे पहले कि हम स्टार्ट करें कि जेडब्ल्यू क्या है कैसे है क्यों है उससे पहले आपको दो टॉपिक्स पता होने चाहिए सबसे पहली चीज तो पब्लिक प्राइवेट क्रिप्टोग्राफी अब इसके बारे में आपको पूरा इन डेप्ट जानने की जरूरत नहीं है बस इतना सा जान लीजिए कि एक बहुत ही अच्छा सिक्योरिटी मैकेनिज्म है जिसको बोला जाता है पब्लिक की क्रिप्टोग्राफी या पब्लिक प्राइवेट की क्रिप्टोग्राफी इसके अंदर दो कीज रेट होती है एक पब्लिक की एक प्राइवेट की पब्लिक की को आप बेझिझक किसी को भी डिस्ट्रीब्यूटर सकते हैं कोई प्रॉब्लम वाली बात नहीं है उस पब्लिक की से जितना भी डाटा इनक्रिप्ट होगा वो डिक्रिप्ट मेरी ही प्राइवेट की से होगा और किसी से नहीं होगा तो कभी भी घबराना नहीं चाहिए पब्लिक की डिस्ट्रीब्यूटर के लिए ही बनी हुई है और हमेशा डिस्ट्रीब्यूटर होती है जो इंपॉर्टेंट कांसेप्ट आता है वो है प्राइवेट की का इसको कभी शेयर नहीं करना चाहिए इसको हमेशा सिक्योर रखना चाहिए जेडब्ल्यू भी कुछ इसी कांसेप्ट पे काम करता है इसके बारे में और अभी आने वाले टाइम में चर्चा करेंगे एक और जो कांसेप्ट आपको पता होना चाहिए वह है स्टेट लेस और स्टेटफुल ये कई जगह काम में आता है जरूरी नहीं है सिर्फ जेडटी में ही हो स्टेट लेस का हमारा मतलब है कि इसकी स्टेट हम कभी भी डेटाबेस के अंदर या किसी फाइल के अंदर स्टोर नहीं रखते हैं जेडटी एक स्टेट लेस मैकेनिज्म है इसी तरह से स्टेट फुल मैकेनिज्म भी होता है जिसकी स्टेट आप डेटाबेस में या किसी फाइल के अंदर स्टोर रखते हो स्टेट लेस का होल इंप्लीमेंटेशन होल गोल ही यही था कि ये स्टेट लेस रहे यानी कि जिसके पास भी ये स्टेट है हम उसी को मान लेंगे कि हां आप वैलिड हो जेडब्ल्यू t टोकेंस भी कुछ इसी कांसेप्ट से बने हैं कि जिसके पास भी टोकन है वही उसका ऑथराइज्ड ओनर है या फिर वही ऑथराइज्ड है इस इस रिसोर्स को एक्सेस करने के लिए या जो सरल भाषा में कहे तो लॉग इन करने के लिए लेकिन जो सबसे कॉमन क्वेश्चन दिमाग में आता है कि अगर यह टोकन किसी के भी हाथ लग गया तो फिर यह वही लॉग इन कर लेगा तो ये सिक्योर कैसे हुआ बिल्कुल सही आपने सही पकड़ा लेकिन जेडब्ल्यू कुछ इसी तरह से डिजाइंड है और इसी मै मम पे डिजाइंड है बट ऐसा नहीं है कि अनसिक्योर्ड है फुल्ली सिक्योर्ड है हर जगह यूज होता है तो इसी वीडियो के अंदर हम इस पे भी चर्चा करेंगे तो आई थिंक दो आपके कांसेप्ट क्लियर हो गए हैं छोटा सा पब्लिक की प्राइवेट की का और स्टेट लेस वर्सेस स्टेट फुल का ये कांसेप्ट आपके क्लियर है तो कमेंट सेक्शन में फटाफट लिख दो हां जी ये थोड़ा थोड़ा ओवरव्यू लग गया 20 पर आपको आ गया तो ठीक है इतना ही चाहिए ओके अब चलते हैं हमारे एक-एक टॉपिक को डिस्कस करने के लिए देखिए सबसे पहले हम चलते हैं यहां पे जेडब्ल्यू t पे व्हाट इज जेडब्ल्यू t जेडब्ल्यू t यानी कि जे वेब टोकन यह एक एनक्रिप्टेड टोकन है मतलब आपके पास कीवर्ड्स हैं आपके लेटर्स और नंबर्स हैं बेसिकली और उनका एक कलेक्शन है रैंडम कलेक्शन है जब्रश कलेक्शन है कुछ इस तरह से जेडब्ल्यू t दिखता है आपको यहां एक डॉट दिखेगा दिख रहा है छोटा सा एक डॉट यहां पे है एक और डॉट होता है थ्री कंपोनेंट से यूजुअली जेडटी बनता है तो हमारे पास ये कुछ जेडब्ल्यू है समझ में कुछ आ नहीं रहा है क्या है तो सबसे पहले हमारा जो एक एफ क्यू आता है जेडब्ल्यू के बारे में कि जेसन वेब टोकन है क्या चीज में तो इसको जानने के लिए कि यह लॉन्ग स्ट्रिंग है यह तो है ही है सबसे अच्छी वेबसाइट है यहां पे जेडटी की ऑफिशियल वेबसाइट jwt.io जेसन वेब टोकन क्या है देखिए आर ओपन इंडस्ट्री स्टैंडर्ड मेथड्स फॉर रिप्रेजेंटिंग क्लेम्म तो हमेशा इसको लॉगइन ऑथराइजेशन इन्हीं सब के लिए काम में लेते हैं बात तो एकदम ठीक है आपकी लेकिन जो फॉर्मली ऑफिशल कंप्यूटर साइंस की लैंग्वेज होती है उस उसमें इसको कुछ इस तरह से रिप्रेजेंट किया जाता है कि दो रिसोर्स आपस में बात कर रहे हैं और उनको क्लेम करना है कि मैं बात कर सकता हूं तो उसी को क्लेम मैकेनिज्म को जेडब्ल्यू बोला जाता है थोड़ी सी कंप्यूटर साइंस की लैंग्वेज इस तरह से रखी जाती है बट कहने का मतलब यही है कि मैं रिसोर्स को एक्सेस कर सकता हूं मैं लॉग इन कर सकता हूं मैं वही बंदा हूं जो आप समझ रहे हैं तो मेरे पास उसकी कीज है मतलब मेरे घर में घुसने के लिए मुझे कीज चाहिए तो मेरे पास की है मैं अनलॉक कर सकता हूं अब सबसे इंपॉर्टेंट जो सवाल आता है कि आखिर ये जेसन वेब टोकन है क्या ये इतनी बड़ी स्ट्रिंग जनरेट कैसे होती है और इस स्ट्रिंग के अंदर होता क्या है इसको समझने के लिए जेडब्ल्यू का यहां पे एक इनकोडेड एग्जांपल है जेडटी आपका डाटा लेते हैं उसको एंक्रिप्ट कर देते हैं और उसको कौन डिक्रिप्ट कर सकता है यह डिसाइड होगा आपके सर्वर पे तो सबसे पहली बात एंक्रिप्ट होगा अब एंक्रिप्ट होगा तो कैसे एंक्रिप्ट होगा एंक्रिप्शन एल्गोरिथम्स होती है बहुत सारी आपने जैसे शा एल्गोरिथम देखी होगी यूटीएफ भी एक इंक्रिप्शन एल्गोरिथम है है बहुत सारी इंक्रिप्शन एल्गोरिथम होती है अ तो इसमें आपको दिखेगा लाइन से बहुत सारी एल्गोरिथम है जो मोस्ट कॉमनली है वो hs256 एल्गोरिदम है जो सबसे ज्यादा यूज़ होती है बट ऐसा कुछ नहीं आप कोई भी एल्गोरिथम यूज़ कर सकते हैं फेयरली सिक्योर ही है इस मैकेनिज्म में जो सारी एल्गोरिथम है आपका ये जो टोकन है यह मैंने यहीं से ही लिया था यह थ्री पार्ट में डिवाइडेड है जो फर्स्ट पार्ट हमारे पास में है वो है रेड स्ट्रिंग ये बहुत बड़ी ये डिटरमाइंड करती है कि आप कौन सी एल्गोरिथम यूज़ कर रहे हो उसके बाद यह जो पर्पल में इन्होंने हाईलाइट कर रखा है यह पार्ट डिटरमाइंड करता है कि क्या इंफॉर्मेशन है आपके पास में और थर्ड पार्ट है आपका सिग्नेचर कि कहीं इस डाटा में कुछ मैनिपुलेशन तो नहीं है एक छोटा सा भी चेंज पूरी एल्गोरिथम को चेंज कर देता है कि एल्गोरिदम वैलिड नहीं है जैसे ही वो एग्जैक्ट सेम सीक्वेंस आता है सॉल्ट वैल्यूज सबको मिला मिलू के आपका जो इंक्रिप्शन आता है उसी को हम यहां पे बोलते हैं लेकिन यह टोकन तो यहां पे डिक्रिप्ट हो सकता है तो ये सारी इंफॉर्मेशन आपको पता लग जाएगी हां जी पता लग जाएगी लेकिन इसके अंदर थ्री कंपोनेंट्स है जैसा कि मैंने बोला सबसे पहले आपकी एल्गोरिथम होती है कि हमें टाइप चाहिए टाइप ऑफ टोकन जेडब्ल्यू t टोकन चाहिए और एल्गोरिथम जो हम यूज करेंगे सिग्नेचर और इंक्रिप्शन एल्गोरिथम वो है hs256 आप दूसरे एल्गोरिथम भी यूज़ कर सकते हो बाय डिफॉल्ट यही सेट होता है होती है जो सेकंड पार्ट है हमारा पर्पल पार्ट वह है हमारा पेलो डाटा एक जेडटी टोकन के अंदर आप काफी इंफॉर्मेशन पैक कर सकते हो वो इंफॉर्मेशन किसी को भी विजिबल नहीं होगी और कोई भी उसको डिक्रिप्ट नहीं कर सकता है क्योंकि इंक्रिप्शन एल्गोरिथम है वहां पे इसके अंदर यूजुअली आप जो सबसे पहले देखोगे वो देखोगे सब्जेक्ट अब आपने अगर कभी मेरी ट्यूटोरियल सीरीज देखी है किसी और की भी देखी होगी तो आपको इसको सब्जेक्ट की जगह आईडी देखने का अ ज्यादा होगा कि हम इसी तरह से देखते हैं या फिर कभी-कभी अंडरस्कोर आईडी बात एक ही है ज्यादातर लोग आईडी इसके अंदर स्टोर करना प्रेफर करते हैं क्यों क्योंकि अगर आपके पास आईडी हैं या प्राइमरी की है उसके थ्रू डेटाबेस से एक क्वेरी लगा के मैं आपकी सारी इंफॉर्मेशन ले सकता हूं लेकिन क्योंकि टोकन काफी लाइटवेट होते हैं कंपैरेटिव तो उसके अंदर आम बात है कि उसके अंदर नेम ईमेल वगैरह भी स्टोर किए जाते हैं ज्यादा सेंसिटिव इंफॉर्मेशन स्टोर नहीं होती है लेकिन ये स्टोर किए जाते हैं एक जो फाइनल चीज इसके अंदर आती है वो है आईएटी यानी कि इश्यूड एट इसके अलावा कई बार आप एक्सपायरी ड भी देखोगे या ् प भी देखोगे एक्सपायरी क्योंकि जितना जरूरी टोकन का इशू होना है उससे भी ज्यादा जरूरी है टोकन का एक्सपायर होना अक्सर जेडब्ल्यू टोकेंस को शॉर्ट टाइम एक्सपायरी के लिए रखा जाता है और मैकेनिज्म है अभी हम आएंगे उस उस टॉपिक पे भी कैसे एक्सपायर करते हैं क्या होते हैं उसपे भी आएंगे बिल्कुल आएंगे लेकिन अभी के लिए आप ये समझ लीजिए सबसे ज्यादा जरूरी है कि वो एक्सपायर कब हो रहा है हर जावास्क्रिप्ट का मैकेनिज्म या फिर किसी भी लैंग्वेज का जो जेडब्ल्यू इंप्लीमेंटेशन है वो आपको अलाउ करता है एक्सपायरी टाइम डिफाइन करने के लिए आप डिफाइन कर सकते हो फाइनली लास्ट में जो आता है वो है वेरीफाई सिग्नेचर अब वेरीफाई सिग्नेचर के अंदर क्या है कि आपके पास जो सबसे इंपॉर्टेंट चीज है वह है योर 256 बिट सीक्रेट यही आपकी प्राइवेट की जनरेट करेगा एगजैक्टली आपकी जो स्ट्रिंग है वो आपकी की अ आपका प्राइवेट सिग्नेचर नहीं है बल्कि आपको सिग्नेचर जनरेट करने में हेल्प करता है तो सपोज करिए यहां पे मैंने लिखा चाय और कोड अब यह जिसको पता है ओबवियस सी बात है वीक सीक्रेट है लेकिन अगर हम ट 1 2 1 2 नहीं ये भी वीक ही है यूजुअली ये रिकमेंड करते हैं कि आप जनरेट कर इसको बहुत सारी यूटिलिटीज है जनरेट करने के लिए बट अभी के लिए चलिए मान लेते हैं कि हमारे पास चाय और कोड है अब इसके थ्रू जो मेरे पास सीक्रेट जनरेट हुआ है सीक्रेट बेस कोड आपके पास है यहां पे तो यह इंफॉर्मेशन वही डिक्रिप्ट कर पाएगा जिसको पता है कि मेरी जो सीक्रेट की है वह चाय और कोड है यह सीक्रेट की जो भी होती है आपके पास में इसको आप सर्वर पे सिक्योर रखते हो इसको आप कभी डिस्ट्रीब्यूटर हो अब जब तक यूजर के पास ये जेडब्ल्यू टोकन है और उसके पास ये डेटा इंफॉर्मेशन सब कुछ है आप उस टोकन को लीजिए डिक्रिप्ट करिए और उसको रिसोर्स एक्सेस करने दीजिए तो ये कुछ एक छोटा सा आपका ओवरव्यू है कि किस तरह से जेडब्ल्यू वर्क करता है और जेडब्ल्यू होता क्या है अब आगे बढ़ने से पहले बाकी चीजों को हम एक्सप्लोर करें उससे पहले हम एक छोटा सा टॉपिक और पढ़ना पड़ेगा जिसका नाम है ऑथेंटिकेशन वर्सेस ऑथराइजेशन हां जी ये क्या चीज है देखिए ऑथेंटिकेशन और ऑथराइजेशन दो अलग चीजें होती हैं ऑथेंटिकेशन का मतलब है जब मैंने आपकी सर्विस पर रजिस्टर किया था तब मैंने कुछ यूनिक सिग्नेचर दिए थे आपको सिग्नेचर का मेरा मतलब है कि आपको यूजर नेम दिया था आपको पासवर्ड दिया था ईमेल दिया था तो यह है ऑथेंटिकेशन मतलब जो मैं बोल रहा हूं मैं ही हूं ऑथेंटिकेट कर रहा हूं अपने आप को इसका कोई यह मतलब नहीं है कि आप कोई रिसोर्स एक्सेस कर पाओगे अब आप डैशबोर्ड एक्सेस करने दे रहे हो इसका मतलब आप ऑथराइज्ड हो डैशबोर्ड एक्सेस करने के लिए आप यूजर डैशबोर्ड एक्सेस करने के लिए ऑथराइज्ड हो या फिर एडमिन डैशबोर्ड एक्सेस करने के लिए ऑथराइज्ड हो ये ऑथराइजेशन के अंदर आता है ऑथेंटिकेशन मतलब आपने बस वेरीफाई किया कि जिस यूजर ने रजिस्टर किया था आप वही हो ऑथराइजेशन के अंदर रिसोर्स एक्सेस डिफाइन होते हैं जब सबसे पहला ड्राफ्ट था जेडब्ल्यू का वो इसीलिए था कि आप ऑथराइज कर पाओ कि आप कौन से रिसोर्स एक्सेस कर पाओ कौन से रिसोर्स नहीं एक्सेस कर पाओ लेकिन इवेंचर केशन के लिए भी यूज होने लग गया अच्छा काम कर रहा है अभी तक भी कर रहा है तो इसलिए अब सबसे कॉमन सिनेरियो आप ये देखोगे ऑथराइजेशन के अंदर कि कई बार क्या है कि हमारे पास सपोज करिए एक सर्विस यहां पे है एक सर्विस यहां पे है और एक सर्विस यहां पे है तो इस तरह की सर्विसेस काफी कॉमन है अ सपोज करिए यह है हमारा डॉक्स यह है चाय कोड की होम वेबसाइट और यहां पे भी हमने कोई एक ऐप बनाई है चाय कोड की अब एज अ यूजर जब आप हमारे पास आते हो तो सपोज करिए एज अ यूजर जब आते हो तो आप चाहते हो कि मैं रिसोर्सेस को एक्सेस करूं आपने कहा ठीक है जी लॉगिन आईडी पासवर्ड हमने कहा इससे लॉग इन कर लिया लेकिन अब यह रिसोर्स आप एक्सेस नहीं कर पाओगे क्यों नहीं कर पाओगे क्योंकि आपका जितना भी डाटा है मैंने यहां पे स्टोर कर रखा है यहां पे आपका सेशन क्रिएट है अगर मैं सेशन की बात कर रहा हूं आगे आएंगे हम सेशन पे भी लेकिन क्योंकि जेडब्ल्यू स्टेटलेस्विजेट कन है और सीक्रेट तो मेरा सीक्रेट मेरे पास है तो यहां पे चाय और कोड है तो मेरे पास मेरा चाय और कोड या फिर सिंपल चाय कोड लिखते हैं चाय कोड तो यह जो टोकन का मेरा सीक्रेट था मेरे पास था मैंने इंटरनली सीक्रेट को यहां भी शेयर कर लिया यहां भी शेयर कर लिया तो अब क्योंकि मैं आपकी इंक्रिप्शन जो इंफॉर्मेशन है उसको मैं डिक्रिप्ट कर सकता हूं मेरे पास सीक्रेट है मेरा तो आप इस मल्टीपल रिसोर्सेस को एक्सेस करने दे सकते हो यूजर को तो यह भी एक एडवांटेज होता है बट अगेन आई थिंक आपको अंतर समझ में आ गया है कि ऑथेंटिकेशन क्या होता है और ऑथराइजेशन क्या होता है यह सबसे बेस्ट यूज केस है जेडब्ल्यू टोकन का ठीक है यह समझ में आ गया अब वापस से आते हैं कि कितनी इंफॉर्मेशन हमारे पास में आ चुकी है अब आई थिंक आपको पता लग गया है जेसन वेब टोकन क्या होता है एक लॉन्ग स्ट्रिंग है थ्री पार्ट्स में डिवाइडेड होती है थ्री पार्ट्स कैसे क्रिएट होते हैं कैसे सिक्योर रहते हैं आपको पता लग गया है जेडब्ल्यू का स्ट्रक्चर भी आपको पता लग गया है कि ठीक है जेडब्ल्यू का स्ट्रक्चर कुछ इसी तरह से दिखता है थ्री पार्ट टोकन होता है ये फर्स्ट पार्ट हेडर है सेकंड पार्ट हमारी इंफॉर्मेशन है थर्ड पार्ट हमारा वेरीफाइबिलिटी है हर एक टोकन के साथ आप एक्सपायरी टाइम ऐड कर सकते हो कि ये टोकन कब एक्सपायर होगा ओके हाउ डू यू सिक्योर स्टोर ए जेडब्ल्यू t ऑन द क्लाइंट साइड हां ये बड़ी इंफॉर्मेशन है इंटरेस्टिंग इंफॉर्मेशन है कि ठीक है जेडब्ल्यू t तो हमारे पास में है लेकिन अब इस जेडब्ल्यू की सिक्योरिटी की क्या गारंटी है देखिए जेडब्ल्यू जो है वो एक शॉर्ट लिफ्ट टोकन की तरह एक्ट करता है यानी कि जिसके पास भी टोकन है वो एक्सेस कर सकता है तो इसके बारे में ज्यादा चिंता करने की जरूरत नहीं क्योंकि वैसे भी शॉर्ट लिड होता है और अगर कोई जेडटी टोकन चुरा सकता है किसी के ब्राउजर से तो व सेशन और कुकीज भी चुरा सकता है लेकिन इसके भी प्रोटेक्शन मैकेनिज्म है उसको भी डिस्कस करेंगे सबसे पहला और जो कॉमन है वो है लोकल स्टोरेज आप जेडब्ल्यू टोकेंस को लोकल स्टोरेज में रख सकते हो प्रॉब्लम ये आती है कि कुछ जावास्क्रिप्ट के अटैक्स होते हैं जैसे एक्सस अटैक क्रॉस सेट स्क्रिप्टिंग उसके थ्रू जावास्क्रिप्ट आपके लोकल स्टोरेज को एक्सेस कर पाती है और ये टोकन ले लिया जाता है कई बार उसके अलावा अ सेशन स्टोरेज भी रख सकते हो जैसे आपके अ सेशन जैसे लोकल स्टोरेज होता है वैसे सेशन भी होते हैं तो सेशन स्टोरेज में भी रखा जा सकता है सेशन पे मैं भी आऊंगा उस पे भी बात करेंगे हम और इसके अलावा आप कुकीज में भी रख सकते हो कुकीज के अंदर आप फ्लैग्स टर्न ऑन कर सकते हो जैसे कि हमारा http2 में है जो आप रख सकते हो और यूज़ कर सकते हो कि इसको सिक्योर कैसे रखा जाए बट सबसे बेस्ट मैकेनिज्म तो यही है कि उसको एक्सपायर कर दिया जाए जितनी जल्दी हो सके कई-कई केसेस में तो 15 मिनट 20 मिनट ही रखा जाता है 10 मिनट ही रखा जाता है 10 मिनट बाद वो टोकन एक्सपायर हो जाता है आप वापस से रिक्वेस्ट करिए आपको एक नया टोकन देंगे इसी मैकेनिज्म को रिफ्रेश टोकन भी कहा जाता है कहां से प्रैक्टिस करना है वो भी बताएंगे अभी ओके नेक्स्ट है व्हाट आर द कॉमन यूज केसेस ऑफ जेडब्ल्यू t जेडब्ल्यू के बहुत सारे यूज़ केसेस हैं पहला तो यह है कि ऑथेंटिकेशन के लिए ही यूज़ कर लेते हैं ऑथराइजेशन के लिए तो करते ही करते हैं इंफॉर्मेशन एक्सचेंज के लिए भी जेडब्ल्यू काफी हेल्पफुल और काफी यूज़फुल होता है क्योंकि आप पेलोड उसके अंदर दे सकते हो तो जरूरी नहीं कि क्लाइंट और सर्वर ही उसके बारे में बात करें सर्वर टू सर्वर भी कांटेक्ट हो सकता है क्योंकि पेलोड है जब तक आपके पास वो प्राइवेट सीक्रेट की है आप एक्सेस कर सकते हो हाउ कैन यू इनवैलिडेट अ जेडटी देखिए हर जेडब्ल्यू बनाते ही आपको उसके साथ में टोकन एक्सपायरी मिलता है हर इंप्लीमेंटेशन जो है जेसन वेब टोकन का एनपीएम में है चाहे जंगो में है आपको हमेशा ऑप्शन दिया जाता है कि एक्सपायरी अब ये आपको डिटरमाइंड करना है कि जब आप एप्लीकेशन बना रहे हैं तो आपको 15 मिनट रखना है या वन डे आपके लिए ठीक है यह आपको ही डिटरमाइंड करना होगा बट आप कर सकते हैं एक मैकेनिज्म और होता है इसका जिसको बोलते हैं रिफ्रेश टोकन रिफ्रेश टोकन को भी आपको समझाते हैं कैसे रिफ्रेश टोकन होते हैं तो हम क्या करते हैं सपोज करिए हमारे पास में एक यह क्लाइंट है और एक हमारे पास में यह सर्वर है तो लिख भी लेते हैं क्लाइंट और सर्वर यह हमारे पास में क्लाइंट है बेसिकली और यह हो गया हमारे पास में सर्वर यह लीजिए क्लाइंट और सर्वर अब जैसे ही क्लाइंट रिक्वेस्ट करता है सबसे पहले क्लाइंट ने कहा कि आपके पास हमें जाना है तो क्लाइंट ने स्टेप वन के अंदर बोला यह लो मेरी इंफॉर्मेशन तो सर्वर ने आपको रिटर्न में दिया कि ठीक है यह लो आपके पास एक टोकन है यह अब आपका जेडब्ल्यू t टोकन है तो ये सपोज करिए हमारा जेडब्ल्यू टोकन है अब जब भी रिक्वेस्ट क्लाइंट करेगा तो हमेशा उस रिक्वेस्ट के अंदर एक टोकन अटैच करके भेजेगा तो यह क्लाइंट का टोकन आपने लिया और भेजा अब क्लाइंट आपको एक्सेस करने अ सर्वर आपको एक्सेस करने दे रहा है रिसोर्सेस लेकिन क्योंकि आपने इसकी एक्सपायरी टाइम बहुत ही शॉर्ट रखी है तो कई बार क्या होगा कि ये जो टोकन है ये एक्सपायर हो जाएगा सपोज करें 15 मिनट ही ड्यूरेशन रखा था यूजर 15 मिनट्स तक आइडियल था अब आपके पास जो रिस्पांस आया वो तो इनवैलिड था क्योंकि टोकन एक्सपायर हो चुका है तो उस केस में हम डायरेक्टली 404 या अनऑथराइज्ड देने की जगह हम कई बार आपको देखने को मिलेगा कि क्लाइंट को एक अ एरर कोड भेजा जाता है 41 जरूरी नहीं है कि 401 ही हो बट ये अक्सर यूज होता है इसके अंदर कहता है कि आपका एक्सेस टोकन एक्सपायर हो गया है लेकिन हम बिहाइंड द सीन क्या करते हैं जब ये फर्स्ट इंफॉर्मेशन एक्सचेंज हो रही थी हमने एक टोकन तो आपको दिया लेकिन उसके साथ-साथ हमने आपका एक रिफ्रेश टोकन जिसको बीबीबी मान लेते हैं यह रिफ्रेश टोकन मैंने डेटाबेस में रख दिया तो इसको भी हम एक डेटाबेस के अंदर रख देते हैं कि ये लीजिए आपका रिफ्रेश टोकन हमारे पास में है तो एक्सेस टोकन तो आपका एक्सपायर हो गया है लेकिन रिफ्रेश टोकन नहीं हुआ है तो हमारे पास आपका रिफ्रेश टोकन हम आपको भी देते हैं एक्सेस टोकन और रिफ्रेश टोकन आप इस एक्सेस टोकन को रिन्यू करवा सकते हो हर एक रिक्वेस्ट के साथ या जब भी आप जाओ अब यह कुछ इस तरह से हो गया कि हां यह तो स्टेट हमने मैनेज कर ली हां जी इसी को बोलते हैं स्टेट फुल कि टोकन से तो आप काम कर रहे थे आपको बार-बार लॉगइन नहीं करना पड़ रहा था बट यह टोकन 15 मिनट में या 1 घंटे में एक्सपायर हो जाता है आपको फिर से नया टोकन चाहिए तो आप 41 अगर आपको रिक्वेस्ट आ रही है तो आप फटाफट से आप रिफ्रेश टोकन एक नया एक्सेस कर सकते हो अगर आपके पास भी है तो आप सिंपली भेजो एक रिक्वेस्ट और आपको एक नया एक्सेस टोकन दे दिया जाएगा इस मैकेनिज्म के बारे में मैं एक डिटेल में वीडियो आपके लिए सेपरेटली बनाऊंगा क्योंकि ये मैकेनिज्म समझाना इतना भी आसान नहीं है थोड़ा सा आपको वर्कफ्लो लगता है बट आई थिंक आपको एक छोटा सा ओवरव्यू लग गया है कि हां रिफ्रेश न एक मैकेनिज्म होता है जिसमें रिफ्रेश टोकन को हम डेटाबेस में सेव रखते हैं और जब भी एक्सेस टोकन एक्सपायर हो जाता है तो हम रिफ्रेश टोकन के थ्रू उस एक्सेस टोकन को रिन्यू करवा सकते हैं यह मैकेनिज्म के लिए सेपरेट वीडियो लगेगा ही इतनी जल्दी इसको नहीं समझा जा सकता खैर वापस आते हैं तो अब हमें पता लग गया कि क्या-क्या मैकेनिज्म है टोकेंस को एक्सपायर कर सकते हैं अगर स्टोर कर रहे हो डीवी में तो उनको वाइट लिस्ट या ब्लैक लिस्ट भी कर सकते हो इनवैलिडेट कर सकते हो रिफ्रेश टोकन के थ्रू तो यह हमारा हो गया बेसिक तो आई थिंक अब आपको थोड़ा-थोड़ा आईडिया लग गया कि जेडटी होते क्या हैं कैसे क्रिएट होते हैं और आपको और डिटेल चाहिए तो आप इसके अंदर और देख सकते हो हालांकि इसमें और पढ़ने जैसा मुझे नहीं लगता इसके बाद भी कुछ है फिर भी आपका मन करे तो यस बात है मोस्ट वेलकम आइए पढ़िए अब हम बात कर लेते हैं क्योंकि इतनी बात अगर हो चुकी है कि जे डब्ल्यूटीए में और ऑथेंटिकेशन ऑथराइजेशन के बारे में तो लगे हाथ हम एक छोटा सा टॉपिक और कल कर लेते हैं कि जेडब्ल्यू और सेशन में क्या डिफरेंस है हां जी चलिए जी तो जेडब्ल्यू और सोशल सेशंस के अंदर थोड़ा सा डिफरेंस आता ही है हमारे पास में थ्री टियर कंपोनेंट मैकेनिज्म रहता है जो कि है क्लाइंट सर्वर और डेटाबेस अब एक चीज याद रखिएगा जितनी बार आप डेटाबेस से रिक्वेस्ट कर रहे हैं उतनी बार आप रिसोर्स कंज्यूम कर रहे हैं उतनी बार नेटवर्क के अंदर डिले आता है क्योंकि आपकी जो मशीन है प्रोसेस कर रही है डेटाबेस फाइल ही तो है एक फाइल से चीजें एक्सेस कर रही है और फिर उसको क्लाइंट पे भेज रही है तो यहां पे जो है प्रोसेसिंग पावर के अलावा हम एक रीड राइट ऑपरेशन भी परफॉर्म कर रहे हैं तो यह ओबवियस सी बात है थोड़ा सा स्लो तो करेगा ही तो पहले हम पढ़ते हैं कि किस तरह से आप स्टेट लेस मैकेनिज्म को यूज करते हैं जो कि टोकेंस बेस है जेडब्ल्यू टोकेंस आपने भेजा लॉगिन और यूजर नेम आई थिंक ये इजली विजिबल तो है मुझे तो है होप फुली आपको भी होगा तो हमारे पास एक लॉगिन यूजर नेम पासवर्ड ईमेल पासवर्ड कुछ भी आता है आपके पास सर्वर पे इंफॉर्मेशन आई सर्वर पे जैसे इंफॉर्मेशन आई आपने डेटाबेस में वैलिड करा कि ठीक है यूजर रजिस्टर्ड है हमारे पास में क्रेडेंशियल वैलिड है आपके पास वापस आया तो हम क्या करते हैं सर्वर के ऊपर ही प्रोसेस करके हमारी कीज क्योंकि सर्वर पे रखी है प्राइवेट कीज तो हम उससे एक इशू करते हैं जेडब्ल्यू टोकेंस को अब आपको जो भी एपीआई रिक्वेस्ट भेजनी है जो भी रिसोर्स एक्सेस करना है आप ये टोकन साथ में भेजिएगा मुझे जैसे ही आप टोकन भेजते हैं मैं टोकन को सिर्फ सर्वर पे ही वैलिडेट कर लेता हूं मुझे डाटा बेस एक्सेस की जरूरत नहीं है क्योंकि स्टेट लेस है प्राइवेट की है पब्लिक प्राइवेट की मैकेनिज्म है मेरे पास प्राइवेट की है आपने मेरी पब्लिक की से एंक्रिप्ट करा है तो मैं इजली उसको एक्सेस कर सकता हूं तो यह तो हो गया हमारा स्टेट लेस अब स्टेटलेस्विजेट बेस एक्सेस नहीं करना पड़ रहा है इसको बहुत स्केल किया जा सकता है रिसोर्स कम कंज्यूम होता है एक्सपायरी भी है जब जरूरत पड़े मुझे कुछ रिफ्रेश करने की या फिर वैलिडेट इनवैलिडेट करने की तो मैं रिफ्रेश टोकन का कांसेप्ट भी ला सकता हूं यहां पे अब इसी तरह से आपके टोकन वैलिडेशन है तो यहां पे आपको जो भी रिसोर्स चाहिए इस पूरे का सेंस का इस पूरे डायग्राम का सेंस यहां पे इस पॉइंट पे यह है कि अगर आपका टोकन वैलिड है तो जो भी एक्सेस आप बोल रहे हैं कि मुझे डेटाबेस से इंफॉर्मेशन लाके दो रीड ऑपरेशन करना है राइट ऑपरेशन करना है वो मैं सारा ऑपरेशन कर सकता हूं एप्लीकेशन कितनी भी बड़ी हो आखिरकार करती तो कड ऑपरेशन ही है आप twitter's में मैकेनिज्म अब एक और आप इसके साथ वर्ड सुनेंगे सेशन सेशन का मतलब जैसे ही आपके पास आए तो इससे याद रखिएगा कि सेशन का मतलब हम स्टेट फुल के अंदर जा रहे हैं डेटाबेस के अंदर कुछ ना कुछ हमें रखना पड़ेगा तो चलिए इसका भी एक बार वर्कफ्लो देख लेते हैं कि आपने हमें भेजा लॉगिन यूजर नेम और पासवर्ड ठीक है जी हमने आपके क्रेडेंशियल वैलिडेट करें कहां से करेंगे डेटाबेस सेही करेंगे ओबवियस सी बात है जैसे ही आपके क्रेडेंशियल वैलिडेट हो गए तब हमने हमने आपके ब्राउजर के अंदर या जहां पर भी आप जो भी पप यूज कर कर रहे हैं हमने एक अ कुकी सेशन आईडी वहां पे रख दिया है अब ये सेशन आईडी भी कुछ वैसा ही होता है ऑलमोस्ट कुकी जैसे अभी जेडब्ल्यू बनाया कुछ वैसा ही बना होता है बट अक्सर ये कुकीज में रखा जाता है बाय द वे आप टोकेंस को भी कुकीज में रख सकते हो बट यहां पे एक सेशन आईडी क्रिएट किया जाता है ये सेशन आईडी इसलिए क्रिएट किया जाता है कि एक यूनिक फील्ड मान लीजिए मॉडल के अंदर आपके या फिर डेटाबेस के अंदर सेम ही सेशन आईडी को हम अपने डेटाबेस के अंदर भी स्टोर रखते हैं जब भी आप कोई रिसोर्स एक्सेस करोगे और मुझे आपको वैलिडेट करना है कि आप ऑथराइज्ड हो या नहीं हो मुझे एक डीवी कॉल लेना ही पड़ेगा सबसे पहले कि आपके पास अथॉरिटी है उस रिसोर्स को एक्सेस करने की या नहीं है जब आपके पास अथॉरिटी है उसको एक्सेस करने की उसको मैं वैलिडेट कर लूंगा रिस्पांस आ गया उसके बाद मैं हर बार फिर एक डेटाबेस कॉल लूंगा कि आप क्या एक्सेस करना चाहते हैं रीड राइट क्रिएट जो भी आपको करना है बट गौर से देखिएगा कि हर एक सेशन के अंदर मुझे एक एक्स्ट्रा डीबी कॉल लगाना पड़ रहा है जो ये वैलिडेट कर रहा है कि आप जो बोल रहे हो आप वही हो या नहीं क्योंकि सेशन आईडी में आप कुछ भी भेज सकते हो क्योंकि मेरा कंप्यूटर यहीं पे सर्वर यहां पे प्रोसेस नहीं कर सकता है आपको वैलिडेट नहीं कर सकता है इसलिए एक एक्स्ट्रा कॉल होती है और कंप्यूटर साइंस के अंदर ना अक्सर हम आईयू ऑपरेशंस को मिनिमम ही करना चाहते हैं क्योंकि वह काफी कॉम्प्लेक्शन है रीड राइट कर तो फाइल स ही रहे हैं आपका माई सीक्वल हो मंगो डीबी हो या एलाइट हो डाटा तो फाइल से ही आ रहा है और वो कॉस्टली ऑपरेशन है तो यह पूरा का पूरा हमारा एक आईडिया रहा कि आई थिंक अब आप कर सकते हो पूरा अच्छा एक चीज़ और आपको बताते हैं यहां पे अगर आपने अ ओपन अ सॉरी नॉट ओपन फी एआई ए अगर आप यहां पे जाएंगे ओपन सोर्स प्रोजेक्ट है अ डॉक्यूमेंटेशन यहां पे नहीं है कुकड इन डॉक्स में जाएंगे तो आप जैसे ही देखेंगे यहां पे ऑथेंटिकेशन का तो हमने काफी कॉम्प्लेक्शन यहां पे डिफाइन कर रखा है कि किस तरह से ऑथेंटिकेशन और सब आता है अब यहां पे आपको एक चीज दिखेगी यूजर रिफ्रेश टोकन यह पूरा मैकेनिज्म कुछ इसी तरह से है तो यूज़र को आप रजिस्टर कर सकते हैं लॉग इन कर सकते हैं लॉग आउट कर सकते हैं रिफ्रेश टोकन इस रिफ्रेश टोकन को देखेंगे तो यहां पे देखिए डॉक्यूमेंटेशन में भी लिख रखा है द रिफ्रेश टोकन एपीआई इ रिस्पांसिबल फॉर रिफ्रेशिंग द एक्सेस टोकन व्हेन इट एक्सपायर्स इट अलाउ यू टू मेक रिक्वेस्ट एट दिस एंड पॉइंट विद द रिफ्रेश टोकन सो रिफ्रेश टोकन हम भी डीबी में सेव रख रहे हैं आपको भी दे रहे हैं एक्सेस टोकन भी दिया जाता है रिफ्रेश टोकन भी दिया जाता है अब क्योंकि रिफ्रेश टोकन हमारे पास डीबी में भी है आपके पास भी है तो मैं उसको कभी भी मैच कर सकता हूं कि किस तरह से काम होगा अ व्हिच हैज द लेंथी एक्सपायरी टाइम टू ऑब्टेन ए न्यू एक्सेस टोकन अ साइमन असली साइमन नियस द एपीआई सेट्स अ न्यू एक्सेस टोकन इन द कुकी फॉर फ्यूचर ऑथेंटिकेशन परपस वाइल रिप्लेसिंग द एक्सपायर्ड वन तो जैसे ही हम एक्सपायर करते हैं तो आपका रिफ्रेश टोकन हम नया दे देते हैं हम भी डीबी में सेव कर लेते हैं और आपको एक एक्सेस टोकन भी दे देते हैं कभी और बात करेंगे इसके बारे में आई थिंक अभी के लिए इतना काफी है काफी बड़ा वीडियो हो गया है ऑलरेडी बट उम्मीद करता हूं कि अब आपको काफी एक क्लेरिटी मिली होगी कि जेडब्लूज होते क्या हैं कैसे काम करते हैं और आई थिंक इसके बाद कंफ्यूजन भी नहीं होगा डर भी नहीं होगा कि टोकन चोरी हो गया क्या हो गया कैसे हो गया कंपलीटली सेफ है सबको हर कोई यूज करता है इसको कमेंट्स का ध्यान रखिएगा सब्सक्राइब नहीं किया है तो कर दीजिएगा और कोई वीडियो इस तरह का चाएगा तो कमेंट सेक्शन में जरूर बताइएगा बहुत सारे वीडियोस आजकल मैं कमेंट सेक्शन से ही पिक कर रहा हूं जो भी रिक्वेस्ट है कांसेप्ट जो भी नया आपको सीखना है देखना है बताइए बनाएंगे वीडियो इसलिए तो i [संगीत]