Node.js और MySQL परियोजनाओं में API को सुरक्षित करनाक्लाइंट ब्राउज़र/ऐप TLS HTTPS 1.3 दर लिमिटर DDoS सुरक्षा JWT सत्यापित करें RBAC जॉय/ज़ोड ✅ SQL परम तैयार विवरण परत 2 परत 3 परत 4 परत 5 सभी ट्रैफ़िक को एन्क्रिप्ट करता है क्रूर को रोकता हैबलपूर्वक आक्रमण करता है की पहचान सत्यापित करता है को रोकता हैSQL इंजेक्शन
APIs आधुनिक वेब और मोबाइल एप्लिकेशन की रीढ़ हैं। Node.js और MySQL के साथ API का निर्माण करते समय, सुरक्षा सर्वोच्च प्राथमिकता होनी चाहिए। यह मार्गदर्शिका आपके API को सुरक्षित करने में मदद करने के लिए आवश्यक सर्वोत्तम प्रथाओं और कोड उदाहरणों को शामिल करती है।
API सुरक्षा वास्तुकला
यह आरेख गेटवे, WAF, प्रमाणीकरण और डेटाबेस सुरक्षा सहित API सुरक्षा के लिए एक स्तरित दृष्टिकोण दिखाता है।
API गेटवे और WAF
सुरक्षा को केंद्रीकृत करने, दर सीमित करने और सत्यापन का अनुरोध करने के लिए API गेटवे और वेब एप्लिकेशन फ़ायरवॉल (WAF) का उपयोग करें। यह आपके Node.js ऐप तक पहुंचने से पहले दुर्भावनापूर्ण ट्रैफ़िक को रोकने में मदद करता है।
उपयोगकर्ता से DB प्रवाह
यह आरेख प्रत्येक चरण पर प्रमाणीकरण और प्राधिकरण जांच के साथ उपयोगकर्ता से डेटाबेस तक सुरक्षित प्रवाह दिखाता है।
1. हर जगह HTTPS का उपयोग करें
ट्रांज़िट में डेटा को एन्क्रिप्ट करने के लिए हमेशा अपने API को HTTPS पर परोसें।letsencryptया व्यावसायिक SSL प्रमाणपत्र का उपयोग करें।
2. प्रमाणीकरण और प्राधिकरण
- JWT (JSON वेब टोकन):स्टेटलेस प्रमाणीकरण के लिए JWT का उपयोग करें। लॉगिन पर टोकन जारी करें और प्रत्येक अनुरोध पर उन्हें सत्यापित करें।
- भूमिका-आधारित एक्सेस कंट्रोल (RBAC):उपयोगकर्ता भूमिकाओं के आधार पर संवेदनशील समापन बिंदुओं तक पहुंच प्रतिबंधित करता है।
// Example: JWT middleware
const jwt = require('jsonwebtoken');
function authenticateToken(req, res, next) {
const token = req.headers['authorization']?.split(' ')[1];
if (!token) return res.sendStatus(401);
jwt.verify(token, process.env.JWT_SECRET, (err, user) => {
if (err) return res.sendStatus(403);
req.user = user;
next();
});
}3. SQL इंजेक्शन को रोकें बचावORM टूटा हुआ प्रामाणिक कमजोर क्रेडेंशियल JWT + MFA + bcrypt टोकन रोटेशन और amp; हैशिंग SSRF से बचना डिफ़ॉल्ट सेटिंग्स सुरक्षा हार्डनिंग Helmet.js & ऑडिट हर खतरे का एक बचाव है - पूर्ण सुरक्षा के लिए सभी परतों को लागू करें OWASP के शीर्ष 10 वेब एप्लिकेशन सुरक्षा जोखिमों पर आधारित
SQL इंजेक्शन को रोकने के लिए हमेशा पैरामीटरयुक्त क्वेरीज़ या ORM लाइब्रेरीज़ (जैसे Sequelize या Knex) का उपयोग करें।
// Using mysql2 with placeholders
const [rows] = await db.execute('SELECT * FROM users WHERE id = ?', [userId]);4. इनपुट सत्यापन और स्वच्छता
express-validatorयाjoiजैसी लाइब्रेरी का उपयोग करके आने वाले सभी डेटा को मान्य और स्वच्छ करें।
5. सुरक्षित संवेदनशील डेटा
- कभी भी सादा-पाठ पासवर्ड संग्रहीत न करें। हमेशा
bcryptके साथ हैश करें। - रहस्यों (डीबी क्रेडेंशियल्स, जेडब्ल्यूटी रहस्य) को पर्यावरण चर में संग्रहीत करें, कोड में नहीं।
6. दर सीमित और थ्रॉटलिंग
express-rate-limitजैसे दर सीमित मिडलवेयर का उपयोग करके अपने API को क्रूर-बल और DDoS हमलों से सुरक्षित रखें।
7. लॉगिंग और मॉनिटरिंग
सभी प्रमाणीकरण प्रयासों और त्रुटियों को लॉग करें। संदिग्ध गतिविधि का पता लगाने के लिए निगरानी उपकरणों का उपयोग करें।
8. निर्भरताएँ अद्यतन रखें
ज्ञात कमजोरियों को दूर करने के लिए Node.js, MySQL और सभी निर्भरताओं को नियमित रूप से अपडेट करें।