split in env required and dynamic values

This commit is contained in:
Julian Krauser 2025-04-19 16:51:37 +02:00
parent f32143b7ac
commit 730c25a9a1
35 changed files with 491 additions and 198 deletions

View file

@ -1,6 +1,5 @@
import jwt from "jsonwebtoken";
import { JWTData, JWTToken } from "../type/jwtTypes";
import { JWT_SECRET, JWT_EXPIRATION } from "../env.defaults";
import InternalException from "../exceptions/internalException";
import RolePermissionService from "../service/management/rolePermissionService";
import UserPermissionService from "../service/management/userPermissionService";
@ -9,11 +8,13 @@ import PermissionHelper from "./permissionHelper";
import WebapiService from "../service/management/webapiService";
import WebapiPermissionService from "../service/management/webapiPermissionService";
import ms from "ms";
import SettingHelper from "./settingsHelper";
import { APPLICATION_SECRET } from "../env.defaults";
export abstract class JWTHelper {
static validate(token: string): Promise<string | jwt.JwtPayload> {
return new Promise<string | jwt.JwtPayload>((resolve, reject) => {
jwt.verify(token, JWT_SECRET, (err, decoded) => {
jwt.verify(token, APPLICATION_SECRET, (err, decoded) => {
if (err) reject(err.message);
else resolve(decoded);
});
@ -27,9 +28,11 @@ export abstract class JWTHelper {
return new Promise<string>((resolve, reject) => {
jwt.sign(
data,
JWT_SECRET,
APPLICATION_SECRET,
{
...(useExpiration ?? true ? { expiresIn: expOverwrite ?? JWT_EXPIRATION } : {}),
...(useExpiration ?? true
? { expiresIn: expOverwrite ?? (SettingHelper.getSetting("session.jwt_expiration") as ms.StringValue) }
: {}),
},
(err, token) => {
if (err) reject(err.message);
@ -100,7 +103,8 @@ export abstract class JWTHelper {
};
let overwriteExpiration =
ms(JWT_EXPIRATION) < new Date().getTime() - new Date(expiration).getTime()
ms(SettingHelper.getSetting("session.jwt_expiration") as ms.StringValue) <
new Date().getTime() - new Date(expiration).getTime()
? null
: Date.now() - new Date(expiration).getTime();