-- Schluessel erzeugen, importieren, Private Key loeschen (#012, #014). -- -- Neue Vorgangsarten: Erzeugen und Import eines Paars laufen im Worker, weil nur er den -- Master-Key hat. Das Loeschen eines gespeicherten Private Keys laeuft ebenfalls dort, damit -- die Grenze „nur src/worker/geheimnisse.ts fasst das Chiffrat an“ einfach bleibt. ALTER TYPE "VorgangsArt" ADD VALUE 'SCHLUESSEL_ERZEUGEN'; ALTER TYPE "VorgangsArt" ADD VALUE 'SCHLUESSEL_IMPORTIEREN'; ALTER TYPE "VorgangsArt" ADD VALUE 'PRIVATE_KEY_LOESCHEN'; -- Der Slug landet in Dateinamen (.pub, ~/.ssh/id_) und Kommentaren. Was hier -- nicht passt, kommt nie bis in einen Pfad oder ein Shell-Skript. ALTER TABLE "Schluessel" ADD CONSTRAINT "schluessel_slug_gueltig" CHECK ( "slug" ~ '^[a-z0-9-]{1,64}$' ); -- „Private Key geloescht“ und ein gespeichertes Chiffrat schliessen sich aus (#014). ALTER TABLE "Schluessel" ADD CONSTRAINT "schluessel_geloescht_ohne_private_key" CHECK ( "privatGeloeschtAm" IS NULL OR "privatVerschluesselt" IS NULL );