Files
tcc-vamos-backend/src/middlewares/ensureAdmin.ts
Hugo Falcao 60dc95bac8 Create user
2022-04-17 20:32:51 -03:00

28 lines
582 B
TypeScript

import { Request, Response, NextFunction } from 'express';
import { verify } from 'jsonwebtoken';
import admin from '../config/admin';
import authConfig from '../config/auth';
import AppError from '../errors/AppError';
interface TokenPayload {
iat: number;
exp: number;
sub: string;
}
export default function ensureAdmin(
request: Request,
response: Response,
next: NextFunction,
): void {
const adminToken = request.admin_token;
if (admin.key != adminToken) {
throw new AppError('You don\'t have permission to perform this action.', 401);
}
next();
}