'use strict'; module.exports = function authorize (authBackend) { return function authorizeMiddleware (req, res, next) { authBackend.authorize(req, res, (err, authorized) => { req.profiler.done('authorize'); if (err) { return next(err); } if (!authorized) { err = new Error('Sorry, you are unauthorized (permission denied)'); err.http_status = 403; return next(err); } return next(); }); }; };