auth.schema 655 B

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