auth.schema 599 B

12345678910111213141516171819
  1. CREATE TABLE IF NOT EXISTS user (
  2. name TEXT NOT NULL UNIQUE,
  3. salt TEXT NOT NULL,
  4. hash TEXT NOT NULL
  5. );
  6. CREATE TABLE IF NOT EXISTS session (
  7. id TEXT PRIMARY KEY UNIQUE,
  8. username TEXT NOT NULL UNIQUE REFERENCES user(name) ON DELETE CASCADE
  9. );
  10. CREATE INDEX IF NOT EXISTS username_idx ON user(name);
  11. CREATE VIEW IF NOT EXISTS sess_user AS SELECT user.name AS name, session.id AS session FROM user JOIN session ON session.username=user.name;
  12. CREATE TABLE IF NOT EXISTS user_acl (
  13. username TEXT NOT NULL UNIQUE REFERENCES user(name) ON DELETE CASCADE,
  14. acl TEXT NOT NULL
  15. );