diff options
Diffstat (limited to 'server/middlewares/admin.ts')
-rw-r--r-- | server/middlewares/admin.ts | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/server/middlewares/admin.ts b/server/middlewares/admin.ts new file mode 100644 index 000000000..ebafa36a4 --- /dev/null +++ b/server/middlewares/admin.ts | |||
@@ -0,0 +1,17 @@ | |||
1 | const logger = require('../helpers/logger') | ||
2 | |||
3 | function ensureIsAdmin (req, res, next) { | ||
4 | const user = res.locals.oauth.token.user | ||
5 | if (user.isAdmin() === false) { | ||
6 | logger.info('A non admin user is trying to access to an admin content.') | ||
7 | return res.sendStatus(403) | ||
8 | } | ||
9 | |||
10 | return next() | ||
11 | } | ||
12 | |||
13 | // --------------------------------------------------------------------------- | ||
14 | |||
15 | export { | ||
16 | ensureIsAdmin | ||
17 | } | ||