add oidc sqlite
This commit is contained in:
@@ -63,4 +63,63 @@ CREATE TABLE IF NOT EXISTS user_permission (
|
||||
,permission TEXT NOT NULL
|
||||
,FOREIGN KEY (user_id) REFERENCES user(id)
|
||||
,UNIQUE(user_id, permission)
|
||||
);
|
||||
);
|
||||
|
||||
|
||||
---- go-oidc
|
||||
|
||||
CREATE TABLE IF NOT EXISTS clients (
|
||||
id TEXT PRIMARY KEY
|
||||
,name TEXT NOT NULL
|
||||
,owner TEXT NOT NULL
|
||||
,created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
||||
,FOREIGN KEY (owner) REFERENCES user (id)
|
||||
,UNIQUE(name, owner)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS client_redirects (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT
|
||||
,uri TEXT NOT NULL
|
||||
,client_id TEXT NOT NULL
|
||||
,created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
||||
,FOREIGN KEY (client_id) REFERENCES clients (id)
|
||||
,UNIQUE(uri, client_id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS authorization_codes (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT
|
||||
,code TEXT NOT NULL UNIQUE
|
||||
,code_challenge TEXT NOT NULL UNIQUE
|
||||
,code_challenge_method TEXT NOT NULL CHECK (code_challenge_method IN ('S256', 'plain'))
|
||||
,user_id TEXT NOT NULL
|
||||
,client_id TEXT NOT NULL
|
||||
,scope TEXT
|
||||
,redirect_uri TEXT NOT NULL
|
||||
,created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
||||
,expires_at DATETIME NOT NULL
|
||||
,used_at DATETIME
|
||||
,FOREIGN KEY (user_id) REFERENCES user (id)
|
||||
,FOREIGN KEY (client_id) REFERENCES client (id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS tokens (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT
|
||||
,token_type TEXT NOT NULL CHECK (token_type IN ('access', 'refresh'))
|
||||
,token_value TEXT NOT NULL UNIQUE
|
||||
,user_id TEXT NOT NULL
|
||||
,client_id TEXT NOT NULL
|
||||
,scope TEXT
|
||||
,created_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
||||
,expires_at DATETIME NOT NULL
|
||||
,FOREIGN KEY (user_id) REFERENCES user (id)
|
||||
,FOREIGN KEY (client_id) REFERENCES clients (id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS client_approvals (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT
|
||||
,user_id TEXT NOT NULL
|
||||
,client_id TEXT NOT NULL
|
||||
,UNIQUE(user_id, client_id)
|
||||
,FOREIGN KEY (user_id) REFERENCES users (id)
|
||||
,FOREIGN KEY (client_id) REFERENCES clients (id)
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user