Lindenii Project Forge
Login

server

Vireo IdP server

Hi… I am well aware that this diff view is very suboptimal. It will be fixed when the refactored server comes along!

Commit info
ID
85e5c2632764f3fdacbf53d1fd8d8088abb2302a
Author
Author date
Mon, 26 Feb 2024 13:53:50 +0100
Committer
Committer date
Mon, 26 Feb 2024 13:53:50 +0100
Actions
Cascade deletes in DB schema
CREATE TABLE User (
	id INTEGER PRIMARY KEY,
	username TEXT NOT NULL UNIQUE,
	password_hash TEXT,
	admin INTEGER NOT NULL DEFAULT 0
);

CREATE TABLE Client (
	id INTEGER PRIMARY KEY,
	client_id TEXT NOT NULL UNIQUE,
	client_secret_hash BLOB,
	owner INTEGER REFERENCES User(id),
	owner INTEGER REFERENCES User(id) ON DELETE CASCADE,
	redirect_uris TEXT,
	client_name TEXT,
	client_uri TEXT
);

CREATE TABLE AccessToken (
	id INTEGER PRIMARY KEY,
	hash BLOB NOT NULL UNIQUE,
	user INTEGER NOT NULL REFERENCES User(id),
	client INTEGER REFERENCES Client(id),
	user INTEGER NOT NULL REFERENCES User(id) ON DELETE CASCADE,
	client INTEGER REFERENCES Client(id) ON DELETE CASCADE,
	scope TEXT,
	issued_at datetime NOT NULL,
	expires_at datetime NOT NULL,
	refresh_hash BLOB UNIQUE,
	refresh_expires_at datetime
);

CREATE TABLE AuthCode (
	id INTEGER PRIMARY KEY,
	hash BLOB NOT NULL UNIQUE,
	created_at datetime NOT NULL,
	user INTEGER NOT NULL REFERENCES User(id),
	client INTEGER NOT NULL REFERENCES Client(id),
	user INTEGER NOT NULL REFERENCES User(id) ON DELETE CASCADE,
	client INTEGER NOT NULL REFERENCES Client(id) ON DELETE CASCADE,
	redirect_uri TEXT,
	scope TEXT
);