@@ -, +, @@ --- .../data/mysql/atomicupdate/bug_20624_disable_oauth.perl | 12 ++++++++++++ installer/data/mysql/sysprefs.sql | 1 + .../prog/en/modules/admin/preferences/web_services.pref | 8 +++++++- 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 installer/data/mysql/atomicupdate/bug_20624_disable_oauth.perl --- a/installer/data/mysql/atomicupdate/bug_20624_disable_oauth.perl +++ a/installer/data/mysql/atomicupdate/bug_20624_disable_oauth.perl @@ -0,0 +1,12 @@ +$DBversion = "XXX"; +if(CheckVersion($DBversion)) { + + $dbh->do(q{ + INSERT IGNORE INTO systempreferences (`variable`,`value`,`options`,`explanation`,`type`) + VALUES + ('RESTOAuth2ClientCredentials','0',NULL,'If enabled, the OAuth2 client credentials flow is enabled for the REST API.','YesNo'); + }); + + print "Upgrade to $DBversion done (Bug 20624 - Disable OAuth2 client credentials grant by default)\n"; + SetVersion($DBversion); +} --- a/installer/data/mysql/sysprefs.sql +++ a/installer/data/mysql/sysprefs.sql @@ -467,6 +467,7 @@ INSERT INTO systempreferences ( `variable`, `value`, `options`, `explanation`, ` ('ReservesMaxPickUpDelay','7','','Define the Maximum delay to pick up an item on hold','Integer'), ('ReservesNeedReturns','1','','If ON, a hold placed on an item available in this library must be checked-in, otherwise, a hold on a specific item, that is in the library & available is considered available','YesNo'), ('RESTdefaultPageSize','20','','Default page size for endpoints listing objects','Integer'), +('RESTOAuth2ClientCredentials','0',NULL,'If enabled, the OAuth2 client credentials flow is enabled for the REST API.','YesNo'), ('RestrictedPageLocalIPs','',NULL,'Beginning of IP addresses considered as local (comma separated ex: "127.0.0,127.0.2")','Free'), ('RestrictedPageContent','',NULL,'HTML content of the restricted page','TextArea'), ('RestrictedPageTitle','',NULL,'Title of the restricted page (breadcrumb and header)','Free'), --- a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/web_services.pref +++ a/koha-tmpl/intranet-tmpl/prog/en/modules/admin/preferences/web_services.pref @@ -4,7 +4,13 @@ Web services: - "Set the default number of results returned by the REST API endpoints to" - pref: "RESTdefaultPageSize" class: integer - - "per page" + - "per page." + - + - pref: RESTOAuth2ClientCredentials + choices: + yes: Enable + no: "Disable" + - "the OAuth2 client credentials grant for the REST API." OAI-PMH: - - pref: OAI-PMH --