wiki/server/middlewares/security.js

34 lines
862 B
JavaScript
Raw Normal View History

2017-02-08 19:52:37 -06:00
'use strict'
2017-04-02 18:56:47 -05:00
/* global app */
2016-08-16 19:56:55 -05:00
/**
* Security Middleware
*
* @param {Express Request} req Express request object
* @param {Express Response} res Express response object
* @param {Function} next next callback function
* @return {any} void
*/
2017-02-08 19:52:37 -06:00
module.exports = function (req, res, next) {
// -> Disable X-Powered-By
app.disable('x-powered-by')
2016-08-16 19:56:55 -05:00
2017-02-08 19:52:37 -06:00
// -> Disable Frame Embedding
res.set('X-Frame-Options', 'deny')
2016-08-16 19:56:55 -05:00
2017-02-08 19:52:37 -06:00
// -> Re-enable XSS Fitler if disabled
res.set('X-XSS-Protection', '1; mode=block')
2016-08-16 19:56:55 -05:00
2017-02-08 19:52:37 -06:00
// -> Disable MIME-sniffing
res.set('X-Content-Type-Options', 'nosniff')
2016-08-16 19:56:55 -05:00
2017-02-08 19:52:37 -06:00
// -> Disable IE Compatibility Mode
res.set('X-UA-Compatible', 'IE=edge')
2017-10-12 22:24:48 -05:00
// -> Disables referrer header when navigating to a different origin
res.set('Referrer-Policy', 'same-origin')
2016-08-16 19:56:55 -05:00
2017-02-08 19:52:37 -06:00
return next()
}