fix: IBANs im Logbuch maskieren

This commit is contained in:
2026-09-09 13:04:13 +02:00
parent 4e05906556
commit bb18a974dd
4 changed files with 113 additions and 11 deletions

View File

@@ -2,6 +2,7 @@
import { FastifyInstance } from "fastify";
import { and, asc, eq, inArray } from "drizzle-orm";
import { authProfiles, historyitems } from "../../db/schema";
import { sanitizeHistoryItem, sanitizeHistoryText, sanitizeHistoryValue } from "../utils/historySanitization";
const columnMap: Record<string, any> = {
customers: historyitems.customer,
@@ -95,7 +96,7 @@ export default async function resourceHistoryRoutes(server: FastifyInstance) {
profiles.map((profile) => [profile.user_id, profile])
);
return data.map((historyitem) => ({
return data.map((historyitem) => sanitizeHistoryItem({
...historyitem,
created_at: historyitem.createdAt,
created_by: historyitem.createdBy,
@@ -153,7 +154,7 @@ export default async function resourceHistoryRoutes(server: FastifyInstance) {
profiles.map((profile) => [profile.user_id, profile])
)
const dataCombined = data.map((historyitem) => ({
const dataCombined = data.map((historyitem) => sanitizeHistoryItem({
...historyitem,
created_at: historyitem.createdAt,
created_by: historyitem.createdBy,
@@ -223,11 +224,11 @@ export default async function resourceHistoryRoutes(server: FastifyInstance) {
const inserted = await server.db
.insert(historyitems)
.values({
text,
text: sanitizeHistoryText(text),
[fkField]: parseId(id),
oldVal: old_val || null,
newVal: new_val || null,
config: config || null,
oldVal: sanitizeHistoryValue(old_val) || null,
newVal: sanitizeHistoryValue(new_val) || null,
config: sanitizeHistoryValue(config) || null,
tenant: (req.user as any)?.tenant_id,
createdBy: userId
})
@@ -238,10 +239,10 @@ export default async function resourceHistoryRoutes(server: FastifyInstance) {
return reply.code(500).send({ error: "Failed to create history entry" });
}
return reply.code(201).send({
return reply.code(201).send(sanitizeHistoryItem({
...data,
created_at: data.createdAt,
created_by: data.createdBy
});
}));
});
}