docfast/dist/middleware/auth.js
openclawd 1ef8f5743c
Some checks failed
Deploy to Production / Deploy to Server (push) Failing after 20s
feat: Add built dist files with EU compliance routes
- Include compiled TypeScript with new /impressum, /privacy, /terms routes
- Temporary commit of dist files for Docker deployment
2026-02-16 13:09:25 +00:00

23 lines
714 B
JavaScript

import { isValidKey, getKeyInfo } from "../services/keys.js";
export function authMiddleware(req, res, next) {
const header = req.headers.authorization;
const xApiKey = req.headers["x-api-key"];
let key;
if (header?.startsWith("Bearer ")) {
key = header.slice(7);
}
else if (xApiKey) {
key = xApiKey;
}
if (!key) {
res.status(401).json({ error: "Missing API key. Use: Authorization: Bearer <key> or X-API-Key: <key>" });
return;
}
if (!isValidKey(key)) {
res.status(403).json({ error: "Invalid API key" });
return;
}
// Attach key info to request for downstream use
req.apiKeyInfo = getKeyInfo(key);
next();
}