Magic-Byte-Seed: aus Prod-Image ausschliessen + Prod-Riegel
Der Pentester-Helfer soll nicht ins Produktions-Image und darf nie gegen Prod laufen: - .dockerignore schliesst backend/scripts/seed-magic-byte-test.ts aus dem Build-Context aus -> Datei liegt nicht mehr im Prod-Container (bleibt im Repo fuer Dev/Staging-Checkout). - Script bricht bei NODE_ENV=production im "create"-Modus hart ab (exit 1); "cleanup" bleibt erlaubt, damit man immer aufraeumen kann. Verifiziert: create@production -> Abbruch exit 1; cleanup@production laeuft. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -37,6 +37,10 @@ Thumbs.db
|
||||
__tests__
|
||||
coverage
|
||||
|
||||
# Pentester-/Dev-Helferscripte gehören NICHT ins Prod-Image (nur lokal/Staging
|
||||
# via Repo-Checkout ausführen). Erzeugen sonst nur toten Ballast im Container.
|
||||
backend/scripts/seed-magic-byte-test.ts
|
||||
|
||||
# Docker files in wrong location
|
||||
docker-compose.yml
|
||||
|
||||
|
||||
@@ -55,6 +55,18 @@ function absoluteFilePath(): string {
|
||||
}
|
||||
|
||||
async function create(customerIdArg?: number): Promise<void> {
|
||||
// Harter Prod-Riegel: dieses Script legt eine Fake-Bankkarte + getarnte
|
||||
// Datei an – das darf NIE gegen Produktion laufen (weder versehentlich noch
|
||||
// absichtlich). `cleanup` bleibt erlaubt, damit man immer aufräumen kann.
|
||||
if (process.env.NODE_ENV === 'production') {
|
||||
console.error(
|
||||
'ABBRUCH: "create" ist bei NODE_ENV=production deaktiviert. Dieser ' +
|
||||
'Pentester-/Test-Helfer gehört nur nach Dev/Staging. (Zum Aufräumen ist ' +
|
||||
'"cleanup" weiterhin erlaubt.)',
|
||||
);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Ziel-Customer bestimmen (Default: erster vorhandener Kunde).
|
||||
const customer = customerIdArg
|
||||
? await prisma.customer.findUnique({ where: { id: customerIdArg }, select: { id: true, customerNumber: true } })
|
||||
|
||||
Reference in New Issue
Block a user