Neuer, von provisioning-server (anode) getrennter Dienst, siehe ADR-0011: FastAPI + Jinja2, eigene Postgres-DB (benutzer-Tabelle), eigenes Service-Token (TUXFLOTTE_KUNDENPLATTFORM_TOKEN) für die Kommunikation mit anode. Org-Zugehörigkeits-Prüfung passiert hier in der Anwendung vor jedem Aufruf gegen anode. Umfang v1: Login, Geräteliste, Auftragskatalog geräteweise aus-/abwählen (inkl. der standardbrowser-Option für Brave). systemd-Unit läuft unter eigenem unprivilegiertem System-User statt root. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
16 lines
492 B
PL/PgSQL
16 lines
492 B
PL/PgSQL
BEGIN;
|
|
|
|
-- organization_id verweist auf provisioning-servers organizations.id, aber
|
|
-- bewusst ohne Foreign Key: Kundenplattform hat eine eigene Datenbank,
|
|
-- getrennt von provisioning-server (siehe ADR-0011), keine Cross-Database-
|
|
-- Referenzen möglich oder gewollt.
|
|
CREATE TABLE benutzer (
|
|
id UUID PRIMARY KEY,
|
|
organization_id UUID NOT NULL,
|
|
email TEXT NOT NULL UNIQUE,
|
|
password_hash TEXT NOT NULL,
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
COMMIT;
|