]> git.koha-community.org Git - koha.git/commit
Bug 28759: limit accessibility for "Manage API keys"
authorPetro Vashchuk <stalkernoid@gmail.com>
Tue, 10 Aug 2021 15:08:53 +0000 (18:08 +0300)
committerVictor Grousset/tuxayo <victor@tuxayo.net>
Mon, 20 Sep 2021 13:50:49 +0000 (15:50 +0200)
commit7291d381d52192782af78ae2da1374bde19922c1
treef452316998a94e6e84e56d759ad3840a943ac638
parent56ca4dd8a591283a20a544a717708c4cc3ca3956
Bug 28759: limit accessibility for "Manage API keys"

This patch limits the accessibility for "Manage API keys" section only
to superlibrarians and the owner of that said API key account.

The way it does it is by checking if user is superlibrarian or if
logged-in user is the same as a patron id/borrower number is the same
as logged-in user number both in template and apikeys.pl and making sure
the link is inaccessible or redirects to the 403 page if user tries to
go there directly.

To reproduce:
1) create/pick existing patron, set Staff access, allows viewing
of catalogue in staff interface (catalogue)" and "Add, modify and
iew patron information (borrowers)" permissions on;
2) enable "RESTOAuth2ClientCredentials" in sysprefs;
3) login with that user into staff interface;
4) check any other patron, go to the "More"->"Manage API keys" and
check that you can see, add delete their API keys;
5) apply patch;
6) with that same user try to access "Manage API keys" page again.
Ensure that you can't access that page of other patrons but can
access your own page and manage your own API keys.
7) log in with superlibrarian now and ensure that you can access every
"Manage API keys" page of every patron and apply changes there.

Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 47c6aaed404f5a39ca6cc5168754f7d05e177b40)
Signed-off-by: Victor Grousset/tuxayo <victor@tuxayo.net>
koha-tmpl/intranet-tmpl/prog/en/includes/members-toolbar.inc
members/apikeys.pl