mosh-helpdesk/server/src/middleware/require-auth.ts
2026-02-18 11:34:27 -08:00

24 lines
566 B
TypeScript

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;
}
if (session.user.deletedAt) {
res.status(401).json({ error: "Unauthorized" });
return;
}
req.user = session.user;
req.session = session.session;
next();
};