Middleware और Authentication की जानकारी

Sep 26, 2024

Middleware और Authentication पर लेक्चर नोट्स

परिचय

  • लेक्चर में middleware और authentication के बीच का अंतर समझाया गया।
  • समझाया गया कि कैसे middleware काम करता है और क्यों यह महत्वपूर्ण है।

Middleware क्या है?

  • Middleware एक मध्यवर्ती परत है जो सर्वर और क्लाइंट के बीच काम करती है।
  • उदाहरण: जैसे रेस्टोरेंट में ऑर्डर देने के बाद, पीछे कई प्रक्रियाएँ होती हैं जैसे सब्जियाँ काटना, खाना बनाना आदि।
  • जब भी हम किसी क्लाइंट से सर्वर पर रिक्वेस्ट भेजते हैं, बहुत सारे प्रोसेस होते हैं जो middleware के माध्यम से होते हैं।

Middleware की भूमिका

  • उदाहरण के तौर पर, Node.js में बना होटल एप्लीकेशन।
  • क्लाइंट की रिक्वेस्ट जैसे मैन्यू दिखाना या रिजर्वेशन बुक करना, middleware के माध्यम से प्रोसेस होती है।

Node.js में Middleware इम्प्लीमेंटेशन

  • Express.js में middleware को app.use() के ज़रिए इम्प्लीमेंट किया जाता है।
  • Middleware फंक्शन में next() को कॉल करना महत्वपूर्ण है ताकि प्रक्रिया आगे बढ़ सके।
  • console.log() के माध्यम से लॉगिंग का कार्य किया जा सकता है।

Authentication और Authorization

Authentication क्या है?

  • Authentication का अर्थ है यह सुनिश्चित करना कि यूजर कौन है।
  • उदाहरण: होटल में पहचान पत्र या पासवर्ड द्वारा सत्यापन।

Authorization क्या है?

  • Authorization का मतलब है कि यूजर को क्या करने की अनुमति है।
  • उदाहरण: एक शेफ को मैन्यू में परिवर्तन करने की अनुमति हो सकती है, लेकिन मैनेजर की सैलरी देखने की नहीं।

Authentication और Authorization के बीच का अंतर

  • Authentication पहले होता है, फिर authorization।
  • सर्वर पर यूजर की पहचान की जाती है, उसके बाद उसे विभिन्न अनुमतियाँ दी जाती हैं।

Authentication इम्प्लीमेंटेशन

Passport.js का उपयोग

  • Passport.js एक लोकप्रिय लाइब्रेरी है जो authentication को आसान बनाती है।
  • इसमें विभिन्न प्री-बिल्ट स्ट्रैटेजीज शामिल हैं जैसे कि लोकल स्ट्रैटेजी (यूजरनेम और पासवर्ड)।

User Schema में Password का Hashing

  • जब यूजर डेटा को डेटाबेस में सेव किया जाता है, तो पासवर्ड को hash किया जाना चाहिए।
  • bcrypt लाइब्रेरी का उपयोग करके पासवर्ड को सुरक्षित रूप से स्टोर किया जाता है।

Hashing Process

  • पासवर्ड hashing प्रक्रिया में, जो भी पासवर्ड यूजर डेटा में सेव होता है, उसे एक random string के साथ जोड़कर hash किया जाता है।
  • यह सुनिश्चित करता है कि पासवर्ड को आसानी से एक्सेस नहीं किया जा सकता।

Compare Function

  • Authentication के समय, जब यूजर पासवर्ड प्रदान करता है, तो उसे hash करके डेटाबेस में स्टोर की गई hash के साथ तुलना की जाती है।

निष्कर्ष

  • Middleware और Authentication दोनों ही आधुनिक वेब एप्लिकेशन्स में महत्वपूर्ण हैं।
  • इनकी सही समझ और इम्प्लीमेंटेशन से सुरक्षा और दक्षता दोनों में सुधार होता है।

नोट्स प्राप्त करने का तरीका

  • छात्रों को प्रोत्साहित किया गया कि वे LinkedIn पर टेग करें और अपने ईमेल साझा करें ताकि उन्हें नोट्स मिल सकें।