mosh-helpdesk/server/src/middleware/require-auth.ts

24 lines
566 B
TypeScript
Raw Normal View History

2026-02-10 20:28:50 +01:00
import type { RequestHandler } from "express";
import { fromNodeHeaders } from "better-auth/node";
import { auth } from "../lib/auth";
export const requireAuth: RequestHandler = async (req, res, next) => {
const session = await auth.api.getSession({
headers: fromNodeHeaders(req.headers),
});
if (!session) {
res.status(401).json({ error: "Unauthorized" });
return;
}
2026-02-18 20:34:27 +01:00
if (session.user.deletedAt) {
res.status(401).json({ error: "Unauthorized" });
return;
}
2026-02-10 20:28:50 +01:00
req.user = session.user;
req.session = session.session;
next();
};