| const { ApiKey } = require("../../models/apiKeys"); | |
| const { SystemSettings } = require("../../models/systemSettings"); | |
| async function validApiKey(request, response, next) { | |
| const multiUserMode = await SystemSettings.isMultiUserMode(); | |
| response.locals.multiUserMode = multiUserMode; | |
| const auth = request.header("Authorization"); | |
| const bearerKey = auth ? auth.split(" ")[1] : null; | |
| if (!bearerKey) { | |
| response.status(403).json({ | |
| error: "No valid api key found.", | |
| }); | |
| return; | |
| } | |
| if (!(await ApiKey.get({ secret: bearerKey }))) { | |
| response.status(403).json({ | |
| error: "No valid api key found.", | |
| }); | |
| return; | |
| } | |
| next(); | |
| } | |
| module.exports = { | |
| validApiKey, | |
| }; | |