backup: SecurityEvent-Tabelle im Backup + Restore mit aufnehmen
Bug: Die in Runde 10 hinzugefügte SecurityEvent-Tabelle (Monitoring) war nicht im Backup-Service erfasst – beim Backup wurden 43 von 44 Tabellen gesichert, beim Restore die SecurityEvent-Daten nicht zurückgespielt. 3 Stellen ergänzt: - tables-Liste (createBackup): SecurityEvent wird jetzt mit findMany abgegriffen - delete-Order (restoreBackup): securityEvent.deleteMany vor dem Wiederbefüllen - restoreOrder: SecurityEvent.upsert nach AuditLog Live-verifiziert: neues Backup enthält SecurityEvent.json mit 152 Einträgen. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
0671565433
commit
3823f8aa50
|
|
@ -249,6 +249,7 @@ export async function createBackup(): Promise<BackupResult> {
|
||||||
{ name: 'EmailLog', query: () => prisma.emailLog.findMany() },
|
{ name: 'EmailLog', query: () => prisma.emailLog.findMany() },
|
||||||
{ name: 'AuditRetentionPolicy', query: () => prisma.auditRetentionPolicy.findMany() },
|
{ name: 'AuditRetentionPolicy', query: () => prisma.auditRetentionPolicy.findMany() },
|
||||||
{ name: 'AuditLog', query: () => prisma.auditLog.findMany() },
|
{ name: 'AuditLog', query: () => prisma.auditLog.findMany() },
|
||||||
|
{ name: 'SecurityEvent', query: () => prisma.securityEvent.findMany() },
|
||||||
];
|
];
|
||||||
|
|
||||||
let totalRecords = 0;
|
let totalRecords = 0;
|
||||||
|
|
@ -310,6 +311,7 @@ export async function restoreBackup(backupName: string): Promise<RestoreResult>
|
||||||
// Logs & Audit zuerst (hängen an allem)
|
// Logs & Audit zuerst (hängen an allem)
|
||||||
await prisma.auditLog.deleteMany({});
|
await prisma.auditLog.deleteMany({});
|
||||||
await prisma.emailLog.deleteMany({});
|
await prisma.emailLog.deleteMany({});
|
||||||
|
await prisma.securityEvent.deleteMany({});
|
||||||
|
|
||||||
// Detail-Tabellen
|
// Detail-Tabellen
|
||||||
await prisma.carInsuranceDetails.deleteMany({});
|
await prisma.carInsuranceDetails.deleteMany({});
|
||||||
|
|
@ -887,6 +889,18 @@ export async function restoreBackup(backupName: string): Promise<RestoreResult>
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
name: 'SecurityEvent',
|
||||||
|
restore: async (data: any[]) => {
|
||||||
|
for (const item of data) {
|
||||||
|
await prisma.securityEvent.upsert({
|
||||||
|
where: { id: item.id },
|
||||||
|
update: convertDates(item),
|
||||||
|
create: convertDates(item),
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
let totalRestored = 0;
|
let totalRestored = 0;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue