business-sql.create_oauth2_client_table.sql Maven / Gradle / Ivy
CREATE TABLE oauth_client
(
`id` bigint(10) NOT NULL AUTO_INCREMENT COMMENT '主键',
`client_id` varchar(255) NOT NULL COMMENT '客户端ID',
`resource_ids` text COMMENT '客户端所能访问的资源id集合,多个资源时用逗号(,)分隔',
`client_secret` varchar(2000) DEFAULT NULL COMMENT '客户端访问密匙',
`scope` varchar(255) DEFAULT NULL COMMENT '客户端申请的权限范围,可选值包括read,write,trust若有多个权限范围用逗号(,)分隔',
`authorized_grant_types` varchar(255) DEFAULT NULL COMMENT '客户端支持的授权许可类型(grant_type),可选值包括authorization_code,password,refresh_token,implicit,client_credentials,若支持多个授权许可类型用逗号(,)分隔',
`redirect_uris` text COMMENT '客户端重定向URI,当grant_type为authorization_code或implicit时, 在Oauth的流程中会使用并检查与数据库内的redirect_uri是否一致',
`authorities` text COMMENT '客户端所拥有的Spring Security的权限值,可选, 若有多个权限值,用逗号(,)分隔',
`access_token_validity` int(11) DEFAULT NULL COMMENT '设定客户端的access_token的有效时间值(单位:秒),若不设定值则使用默认的有效时间值(60 * 60 * 12, 12小时)',
`refresh_token_validity` int(11) DEFAULT NULL COMMENT '设定客户端的refresh_token的有效时间值(单位:秒),若不设定值则使用默认的有效时间值(60 * 60 * 24 * 30, 30天)',
`additional_information` text COMMENT '这是一个预留的字段,在Oauth的流程中没有实际的使用,可选,但若设置值,必须是JSON格式的数据',
PRIMARY KEY (`id`) USING BTREE,
UNIQUE KEY `client_id` (`client_id`) USING HASH
) DEFAULT CHARSET = utf8mb4 COMMENT '客户端'