Files
flowsight/backend/internal/store/migrations/0005_auth.sql
T

20 lines
753 B
SQL

-- FlowSight schema v5: Google-authenticated users + server sessions.
-- user_key for a login user is `u:<google_sub>`; all user-scoped tables
-- (watchlists, routines, alerts, destinations, reports) work unchanged.
CREATE TABLE IF NOT EXISTS users(
id INTEGER PRIMARY KEY AUTOINCREMENT,
google_sub TEXT NOT NULL UNIQUE,
email TEXT NOT NULL,
name TEXT NOT NULL DEFAULT '',
avatar_url TEXT NOT NULL DEFAULT '',
created_at TEXT NOT NULL DEFAULT ''
);
CREATE TABLE IF NOT EXISTS sessions(
token TEXT PRIMARY KEY,
user_key TEXT NOT NULL,
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
expires_at TEXT NOT NULL,
created_at TEXT NOT NULL DEFAULT ''
);
CREATE INDEX IF NOT EXISTS idx_sessions_user ON sessions(user_id);