From 6e3c22808b3d1c2b930dece7c3d4792e3c8c6991 Mon Sep 17 00:00:00 2001 From: "shengzhaoli.shengz" Date: Fri, 13 Oct 2023 09:55:51 +0800 Subject: [PATCH] SQL update --- others/database/initial_db.ddl | 51 ++++++++----- others/database/oauth.ddl | 132 +++++++++++++++++++-------------- 2 files changed, 106 insertions(+), 77 deletions(-) diff --git a/others/database/initial_db.ddl b/others/database/initial_db.ddl index a488364..bea1df7 100644 --- a/others/database/initial_db.ddl +++ b/others/database/initial_db.ddl @@ -12,29 +12,40 @@ -- ############### -- Domain: User -- ############### -Drop table if exists user_; -CREATE TABLE user_ ( - id int(11) NOT NULL auto_increment, - guid varchar(255) not null unique, - create_time datetime , - archived tinyint(1) default '0', - email varchar(255), - password varchar(255) not null, - phone varchar(255), - username varchar(255) not null unique, - default_user tinyint(1) default '0', - last_login_time datetime , - PRIMARY KEY (id) -) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8; +Drop table if exists user_; +CREATE TABLE user_ +( + id int(11) NOT NULL auto_increment, + guid varchar(255) not null unique, + create_time datetime, + archived tinyint(1) default '0', + updated_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + username varchar(255) not null unique, + password varchar(255) not null, + enabled tinyint(1) default '1', + phone varchar(255), + email varchar(255), + address varchar(255), + nickname varchar(255), + updated_at int(15) default 0, + default_user tinyint(1) default '0', + last_login_time datetime, + PRIMARY KEY (id), + index idx_username (username) +) ENGINE = InnoDB + AUTO_INCREMENT = 20 + DEFAULT CHARSET = utf8; -- ############### -- Domain: Privilege -- ############### -Drop table if exists user_privilege; -CREATE TABLE user_privilege ( - user_id int(11), - privilege varchar(255), - KEY user_id_index (user_id) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; +Drop table if exists user_privilege; +CREATE TABLE user_privilege +( + user_id int(11), + privilege varchar(255), + KEY user_id_index (user_id) +) ENGINE = InnoDB + DEFAULT CHARSET = utf8; diff --git a/others/database/oauth.ddl b/others/database/oauth.ddl index 397a0e2..9dfd0ba 100644 --- a/others/database/oauth.ddl +++ b/others/database/oauth.ddl @@ -1,66 +1,84 @@ -- --- Oauth sql -- MYSQL +-- Oauth sql -- MYSQL v3.0.0 -- -Drop table if exists oauth_client_details; -create table oauth_client_details ( - client_id VARCHAR(255) PRIMARY KEY, - resource_ids VARCHAR(255), - client_secret VARCHAR(255), - scope VARCHAR(255), - authorized_grant_types VARCHAR(255), - web_server_redirect_uri VARCHAR(255), - authorities VARCHAR(255), - access_token_validity INTEGER, - refresh_token_validity INTEGER, - additional_information TEXT, - create_time timestamp default now(), - archived tinyint(1) default '0', - trusted tinyint(1) default '0', - autoapprove VARCHAR (255) default 'false' -) ENGINE=InnoDB DEFAULT CHARSET=utf8; +Drop table if exists oauth2_registered_client; +CREATE TABLE oauth2_registered_client +( + id varchar(100) NOT NULL, + archived TINYINT(1) DEFAULT '0', + create_time DATETIME, + updated_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + client_id varchar(100) NOT NULL, + client_id_issued_at timestamp DEFAULT CURRENT_TIMESTAMP NOT NULL, + client_secret varchar(200) DEFAULT NULL, + client_secret_expires_at datetime DEFAULT NULL, + client_name varchar(200) NOT NULL, + client_authentication_methods varchar(1000) NOT NULL, + authorization_grant_types varchar(1000) NOT NULL, + redirect_uris varchar(1000) DEFAULT NULL, + post_logout_redirect_uris varchar(1000) DEFAULT NULL, + scopes varchar(1000) NOT NULL, + client_settings varchar(2000) NOT NULL, + token_settings varchar(2000) NOT NULL, + PRIMARY KEY (id) +) ENGINE = InnoDB + DEFAULT CHARSET = utf8; +-- authorization +Drop table if exists oauth2_authorization; +CREATE TABLE oauth2_authorization +( + id varchar(100) NOT NULL, + registered_client_id varchar(100) NOT NULL, + principal_name varchar(200) NOT NULL, + authorization_grant_type varchar(100) NOT NULL, + authorized_scopes varchar(1000) DEFAULT NULL, + attributes blob DEFAULT NULL, + state varchar(500) DEFAULT NULL, + authorization_code_value blob DEFAULT NULL, + authorization_code_issued_at datetime DEFAULT NULL, + authorization_code_expires_at datetime DEFAULT NULL, + authorization_code_metadata blob DEFAULT NULL, + access_token_value blob DEFAULT NULL, + access_token_issued_at datetime DEFAULT NULL, + access_token_expires_at datetime DEFAULT NULL, + access_token_metadata blob DEFAULT NULL, + access_token_type varchar(100) DEFAULT NULL, + access_token_scopes varchar(1000) DEFAULT NULL, + oidc_id_token_value blob DEFAULT NULL, + oidc_id_token_issued_at datetime DEFAULT NULL, + oidc_id_token_expires_at datetime DEFAULT NULL, + oidc_id_token_metadata blob DEFAULT NULL, + refresh_token_value blob DEFAULT NULL, + refresh_token_issued_at datetime DEFAULT NULL, + refresh_token_expires_at datetime DEFAULT NULL, + refresh_token_metadata blob DEFAULT NULL, + user_code_value blob DEFAULT NULL, + user_code_issued_at datetime DEFAULT NULL, + user_code_expires_at datetime DEFAULT NULL, + user_code_metadata blob DEFAULT NULL, + device_code_value blob DEFAULT NULL, + device_code_issued_at datetime DEFAULT NULL, + device_code_expires_at datetime DEFAULT NULL, + device_code_metadata blob DEFAULT NULL, + updated_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (id) +) ENGINE = InnoDB + DEFAULT CHARSET = utf8; -Drop table if exists oauth_access_token; -create table oauth_access_token ( - create_time timestamp default now(), - token_id VARCHAR(255), - token BLOB, - authentication_id VARCHAR(255) UNIQUE, - user_name VARCHAR(255), - client_id VARCHAR(255), - authentication BLOB, - refresh_token VARCHAR(255) -) ENGINE=InnoDB DEFAULT CHARSET=utf8; +-- authorization consent +Drop table if exists oauth2_authorization_consent; +CREATE TABLE oauth2_authorization_consent +( + registered_client_id varchar(100) NOT NULL, + principal_name varchar(200) NOT NULL, + authorities varchar(1000) NOT NULL, + updated_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + PRIMARY KEY (registered_client_id, principal_name) +) ENGINE = InnoDB + DEFAULT CHARSET = utf8; -Drop table if exists oauth_refresh_token; -create table oauth_refresh_token ( - create_time timestamp default now(), - token_id VARCHAR(255), - token BLOB, - authentication BLOB -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - -Drop table if exists oauth_code; -create table oauth_code ( - create_time timestamp default now(), - code VARCHAR(255), - authentication BLOB -) ENGINE=InnoDB DEFAULT CHARSET=utf8; - - - --- Add indexes -create index token_id_index on oauth_access_token (token_id); -create index authentication_id_index on oauth_access_token (authentication_id); -create index user_name_index on oauth_access_token (user_name); -create index client_id_index on oauth_access_token (client_id); -create index refresh_token_index on oauth_access_token (refresh_token); - -create index token_id_index on oauth_refresh_token (token_id); - -create index code_index on oauth_code (code);