Files
EKDOS/backend/migrations/0001_init.sql
T
Kyle Müller 7d82e807fc
EK-DOS-WEB bauen und ausrollen / frontend (push) Failing after 22s
EK-DOS-WEB bauen und ausrollen / backend (push) Failing after 27s
EK-DOS-WEB bauen und ausrollen / deploy (push) Skipped
Initial
2026-09-06 13:25:44 +02:00

35 lines
1.4 KiB
SQL

-- EK-DOS-WEB: Benutzer, Rollen und Protokoll.
-- Sitzungen und n8n-Antworten liegen in Redis, nicht hier.
create extension if not exists pgcrypto;
create table if not exists users (
id uuid primary key default gen_random_uuid(),
username text not null,
display_name text not null,
role text not null default 'buero',
password_hash text not null,
is_active boolean not null default true,
created_at timestamptz not null default now(),
updated_at timestamptz not null default now(),
last_login_at timestamptz,
constraint users_role_check check (role in ('admin', 'inhaber', 'buero'))
);
-- Anmeldename ohne Ruecksicht auf Gross-/Kleinschreibung eindeutig.
create unique index if not exists users_username_key on users (lower(username));
create index if not exists users_active_idx on users (is_active) where is_active;
create table if not exists user_audit (
id bigserial primary key,
actor_id uuid references users (id) on delete set null,
actor_name text not null,
action text not null,
subject_id uuid,
subject text not null default '',
detail jsonb not null default '{}'::jsonb,
created_at timestamptz not null default now()
);
create index if not exists user_audit_created_at_idx on user_audit (created_at desc);