mirror of
https://github.com/elyby/oauth2-server.git
synced 2024-12-17 10:39:45 +05:30
83 lines
4.0 KiB
SQL
83 lines
4.0 KiB
SQL
CREATE TABLE `oauth_clients` (
|
|
`id` CHAR(40) NOT NULL,
|
|
`secret` CHAR(40) NOT NULL,
|
|
`name` VARCHAR(255) NOT NULL,
|
|
`auto_approve` TINYINT(1) NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `u_oacl_clse_clid` (`secret`,`id`)
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_client_endpoints` (
|
|
`endpoint_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`client_id` CHAR(40) NOT NULL,
|
|
`redirect_uri` VARCHAR(255) NOT NULL,
|
|
PRIMARY KEY (`endpoint_id`),
|
|
KEY `i_oaclen_clid` (`client_id`),
|
|
CONSTRAINT `f_oaclen_clid` FOREIGN KEY (`client_id`) REFERENCES `oauth_clients` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session` (
|
|
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`client_id` CHAR(40) NOT NULL,
|
|
`owner_type` ENUM('user','client') NOT NULL DEFAULT 'user',
|
|
`owner_id` VARCHAR(255) NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `i_uase_clid_owty_owid` (`client_id`,`owner_type`,`owner_id`),
|
|
CONSTRAINT `f_oase_clid` FOREIGN KEY (`client_id`) REFERENCES `oauth_clients` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session_access_token` (
|
|
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`session_id` INT(10) UNSIGNED NOT NULL,
|
|
`access_token` CHAR(40) CHARACTER SET utf8 NOT NULL DEFAULT '',
|
|
`access_token_expires` INT(10) UNSIGNED NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `u_oaseacto_acto_seid` (`access_token`,`session_id`),
|
|
KEY `f_oaseto_seid` (`session_id`),
|
|
CONSTRAINT `f_oaseto_seid` FOREIGN KEY (`session_id`) REFERENCES `oauth_session` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session_authcode` (
|
|
`session_id` INT(10) UNSIGNED NOT NULL,
|
|
`session_access_token_id` INT(10) UNSIGNED DEFAULT NULL,
|
|
`auth_code` CHAR(40) CHARACTER SET utf8 NOT NULL DEFAULT '',
|
|
`auth_code_expires` INT(10) UNSIGNED NOT NULL,
|
|
PRIMARY KEY (`session_id`),
|
|
KEY `f_oaseau_setoid` (`session_access_token_id`),
|
|
CONSTRAINT `f_oaseau_seid` FOREIGN KEY (`session_id`) REFERENCES `oauth_session` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION,
|
|
CONSTRAINT `f_oaseau_setoid` FOREIGN KEY (`session_access_token_id`) REFERENCES `oauth_session_access_token` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session_redirect` (
|
|
`session_id` INT(10) UNSIGNED NOT NULL,
|
|
`redirect_uri` VARCHAR(255) CHARACTER SET utf8 NOT NULL DEFAULT '',
|
|
PRIMARY KEY (`session_id`),
|
|
CONSTRAINT `f_oasere_seid` FOREIGN KEY (`session_id`) REFERENCES `oauth_session` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session_refresh_token` (
|
|
`session_access_token_id` INT(10) UNSIGNED NOT NULL,
|
|
`refresh_token` CHAR(40) CHARACTER SET utf8 NOT NULL DEFAULT '',
|
|
PRIMARY KEY (`session_access_token_id`),
|
|
CONSTRAINT `f_oasetore_setoid` FOREIGN KEY (`session_access_token_id`) REFERENCES `oauth_session_access_token` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_scopes` (
|
|
`id` SMALLINT(5) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`key` VARCHAR(255) NOT NULL,
|
|
`name` VARCHAR(255) NOT NULL,
|
|
`description` VARCHAR(255) DEFAULT NULL,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `u_oasc_sc` (`key`)
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `oauth_session_token_scope` (
|
|
`session_token_scope_id` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT,
|
|
`session_access_token_id` INT(10) UNSIGNED NOT NULL,
|
|
`scope_id` SMALLINT(5) UNSIGNED NOT NULL,
|
|
PRIMARY KEY (`session_token_scope_id`),
|
|
UNIQUE KEY `u_setosc_setoid_scid` (`session_access_token_id`,`scope_id`),
|
|
KEY `f_oasetosc_scid` (`scope_id`),
|
|
CONSTRAINT `f_oasetosc_setoid` FOREIGN KEY (`session_access_token_id`) REFERENCES `oauth_session_access_token` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION,
|
|
CONSTRAINT `f_oasetosc_scid` FOREIGN KEY (`scope_id`) REFERENCES `oauth_scopes` (`id`) ON DELETE CASCADE ON UPDATE NO ACTION
|
|
) ENGINE=INNODB DEFAULT CHARSET=utf8; |