mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
fix(swagger): add mising validation
This commit is contained in:
@@ -2,6 +2,8 @@ import type { IncomingMessage } from "node:http";
|
|||||||
import { TimeSpan } from "lucia";
|
import { TimeSpan } from "lucia";
|
||||||
import { Lucia } from "lucia/dist/core.js";
|
import { Lucia } from "lucia/dist/core.js";
|
||||||
import { type ReturnValidateToken, adapter } from "./auth";
|
import { type ReturnValidateToken, adapter } from "./auth";
|
||||||
|
import { findAdminByAuthId } from "../api/services/admin";
|
||||||
|
import { findUserByAuthId } from "../api/services/user";
|
||||||
|
|
||||||
export const luciaToken = new Lucia(adapter, {
|
export const luciaToken = new Lucia(adapter, {
|
||||||
sessionCookie: {
|
sessionCookie: {
|
||||||
@@ -31,6 +33,16 @@ export const validateBearerToken = async (
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
const result = await luciaToken.validateSession(sessionId);
|
const result = await luciaToken.validateSession(sessionId);
|
||||||
|
|
||||||
|
if (result.user) {
|
||||||
|
if (result.user?.rol === "admin") {
|
||||||
|
const admin = await findAdminByAuthId(result.user.id);
|
||||||
|
result.user.adminId = admin.adminId;
|
||||||
|
} else if (result.user?.rol === "user") {
|
||||||
|
const userResult = await findUserByAuthId(result.user.id);
|
||||||
|
result.user.adminId = userResult.adminId;
|
||||||
|
}
|
||||||
|
}
|
||||||
return {
|
return {
|
||||||
session: result.session,
|
session: result.session,
|
||||||
...((result.user && {
|
...((result.user && {
|
||||||
|
|||||||
Reference in New Issue
Block a user