@@ -, +, @@ --- .../data/mysql/atomicupdate/oauth_tokens.perl | 22 ++++++++++--------- installer/data/mysql/kohastructure.sql | 12 ++++++++++ 2 files changed, 24 insertions(+), 10 deletions(-) --- a/installer/data/mysql/atomicupdate/oauth_tokens.perl +++ a/installer/data/mysql/atomicupdate/oauth_tokens.perl @@ -1,15 +1,17 @@ $DBversion = 'XXX'; if (CheckVersion($DBversion)) { - $dbh->do(q{DROP TABLE IF EXISTS oauth_access_tokens}); - $dbh->do(q{ - CREATE TABLE oauth_access_tokens ( - access_token VARCHAR(255) NOT NULL, - client_id VARCHAR(255) NOT NULL, - expires INT NOT NULL, - PRIMARY KEY (access_token) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8 - }); + + if (!TableExists('oauth_access_tokens')) { + $dbh->do(q{ + CREATE TABLE oauth_access_tokens ( + `access_token` VARCHAR(191) NOT NULL, + `client_id` VARCHAR(191) NOT NULL, + `expires` INT NOT NULL, + PRIMARY KEY (`access_token`) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci + }); + } SetVersion( $DBversion ); - print "Upgrade to $DBversion done (Bug XXXXX - description)\n"; + print "Upgrade to $DBversion done (Bug 20402 - Implement OAuth2 authentication for REST API)\n"; } --- a/installer/data/mysql/kohastructure.sql +++ a/installer/data/mysql/kohastructure.sql @@ -4160,6 +4160,18 @@ CREATE TABLE library_groups ( UNIQUE KEY title ( title ) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; +-- +-- Table structure for table 'oauth_access_tokens' +-- + +DROP TABLE IF EXISTS `oauth_access_tokens`; +CREATE TABLE `oauth_access_tokens` ( + `access_token` VARCHAR(191) NOT NULL, -- generarated access token + `client_id` VARCHAR(191) NOT NULL, -- the client id the access token belongs to + `expires` INT NOT NULL, -- expiration time in seconds + PRIMARY KEY (`access_token`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; + /*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; --