oidc stuff

This commit is contained in:
nora 2025-07-13 15:37:29 +02:00
parent 4d7a2be572
commit 30c49c3795
12 changed files with 538 additions and 6 deletions

View file

@ -2,6 +2,6 @@ CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT, -- ensure no IDs are reused
username TEXT NOT NULL UNIQUE,
password TEXT NOT NULL
);
) STRICT;
CREATE INDEX users_username ON users(username);

View file

@ -0,0 +1,21 @@
CREATE TABLE oauth_clients (
app_name TEXT NOT NULL UNIQUE,
client_id TEXT NOT NULL PRIMARY KEY,
client_secret TEXT NOT NULL,
redirect_uri TEXT NOT NULL,
client_type TEXT NOT NULL
) STRICT;
INSERT INTO oauth_clients (app_name, client_id, client_secret, redirect_uri, client_type)
VALUES ('example', 'EUWCM5WHWTWR43AK', 'VC3PLLVMGSVKL4YE3WICL4URJQUC443I', 'http://localhost:3333/callback', 'confidential');
CREATE TABLE oauth_codes (
code TEXT PRIMARY KEY,
client_id TEXT NOT NULL,
created_time_ms INTEGER NOT NULL,
user_id INTEGER NOT NULl,
used INTEGER NOT NULL DEFAULT 0,
FOREIGN KEY(client_id) REFERENCES oauth_clients(client_id) ON DELETE CASCADE,
FOREIGN KEY(user_id) REFERENCES users(id) ON DELETE CASCADE
) STRICT;