Send Email In Node.JS In Hindi | NodeMailer Example
How to Implement RESTful APIs In NodeJS In Hindi | NodeJS RestFul API Example
Difference Between SOAP AND REST API In Node - Express In Hindi
Logical Operators In JavaScript In Hindi | JS Logical Operators In Hindi
Computer Basic Knowledge in Hindi
If tutorials available on this website are helpful for you, please whitelist this website in your ad blocker😭 or Donate to help us ❤️ pay for the web hosting to keep the website running.
Node.JS helmet
किसी भी तरह के application को secure करना , threats और hacking से बचाना काफी important होता है , और इस blog में हम सीखेंगे कि हम अपने Node - Express.JS में develop किये गए application को कैसे secure बनाये।
●●●
Well हम जानते है किसी भी request के लिए कुछ particular headers
set होते हैं हालाँकि development time पर हम इन पर उतना ध्यान नहीं देते लेकिन security के नजरिये से ये काफी important होते हैं।
किसी request के लिए headers को set करने के लिए Express.js में एक package use कर सकते हैं जिसका नाम है helmet
.
helmet Node.js package एक middleware
है जो Express.js framework के लिए available है , ये package web application security के लिए use होता है।
Helmet, आपके Express application के security headers
को set करने में मदद करता है।
Helmet, HTTP headers को set करके web application की security improve करता है। इसमें कुछ predefined security headers
होता है जिनको आप अपने Express application में enable कर सकते हैं।
ये headers XSS (Cross-Site Scripting) attacks, Clickjacking, MIME type sniffing, और बाकी security concerns से बचाने में मदद करते हैं।
अब हम एक helmet package को example से समझेंगे कि इसे कैसे use कर सकते हैं।
1. अपने Express.js application में सबसे पहले helmet
package को install कर लें -
npm install helmet
2. Express application में Helmet middleware
को include करें -
const express = require('express');
const helmet = require('helmet');
const app = express();
// Helmet middleware.
app.use(helmet());
// Your routes and other middleware.
app.get('/', (req, res) => {
res.send('Hello, World!');
});
// Listen on a port.
app.listen(3000, () => {
console.log('Server is running on port 3000');
});
Explanation :
इस code में , helmet()
middleware को Express application के middleware stack में include किया है। इससे Helmet default security headers automatically set कर देगा।
आप इस application के response headers को inspect
करके देख सकते हैं।
helmet package आपको हर तरह के security headers provide करता है जिन्हे नीचे example के साथ दिखाया है।
CSP आपको Cross-Site Scripting (XSS) attack से भी बचाता है। जिसमे आप ये define कर सकते हैं कि किस content का source load करने के लिए allowed है।
const express = require('express');
const helmet = require('helmet');
const app = express();
// Helmet middleware with CSP.
app.use(
helmet.contentSecurityPolicy({
directives: {
defaultSrc: ["'self'"],
scriptSrc: ["'self'", 'trusted-cdn.com'],
// Add more directives as needed
},
})
);
// Helmet middleware.
app.use(helmet());
ये header आपके Express application के version information को leak कर सकता है , Helmet के hidePoweredBy
middleware से आप से hide कर सकते हैं।
const express = require('express');
const helmet = require('helmet');
const app = express();
// X-Powered-By header ko disable karein
app.disable('x-powered-by');
// Helmet middleware
app.use(helmet());
इससे आप Referrer-Policy header set कर सकते हैं।
const express = require('express');
const helmet = require('helmet');
const app = express();
// Helmet middleware with Referrer-Policy header.
app.use(
helmet.referrerPolicy({
policy: 'same-origin',
})
);
// Helmet middleware.
app.use(helmet());
expectCt middleware से आप Expect-CT
header set करते हैं जो Certificate Transparency policy को enforce करता है।
const express = require('express');
const helmet = require('helmet');
const app = express();
// Helmet middleware with Expect-CT header.
app.use(
helmet.expectCt({
enforce: true,
})
);
// Helmet middleware.
app.use(helmet());
helmet package के और advance options देखने के लिए आप इस npm की official website https://www.npmjs.com/package/helmet visit कर सकते हैं।
●●●
Loading ...
Hi ! I'm Rahul Kumar Rajput founder of learnhindituts.com. I'm a software developer having more than 4 years of experience. I love to talk about programming as well as writing technical tutorials and blogs that can help to others. I'm here to help you navigate the coding cosmos and turn your ideas into reality, keep coding, keep learning :)
Get connected with me. :) LinkedIn Twitter Instagram Facebook