f8ec2d7cf1
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
12 lines
602 B
SQL
12 lines
602 B
SQL
-- Users of this organization's instance. One database == one organization, so no
|
|
-- org_id. Email is stored already-normalized (lowercase) by the application, so a
|
|
-- plain UNIQUE suffices. Passwords are stored only as argon2id PHC strings.
|
|
CREATE TABLE app_user (
|
|
id UUID PRIMARY KEY,
|
|
email TEXT NOT NULL UNIQUE CHECK (email <> ''),
|
|
password_hash TEXT NOT NULL CHECK (password_hash <> ''),
|
|
role TEXT NOT NULL CHECK (role IN ('admin', 'editor')),
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
|
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
|
);
|