[Koha-bugs] [Bug 30962] REST API: Add endpoint /auth/password/validation

bugzilla-daemon at bugs.koha-community.org bugzilla-daemon at bugs.koha-community.org
Fri Jan 27 18:44:26 CET 2023


https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=30962

--- Comment #27 from Tomás Cohen Arazi <tomascohen at gmail.com> ---
Created attachment 145765
  -->
https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=145765&action=edit
Bug 30962: REST API: Add endpoint /auth/password/validation

This patch adds an endpoint for /auth/password/validation

This allows a third-party, using an authenticated and authorized Koha
API user, to check if the username and password given by a user is
correct in Koha.

For example, a Keycloak extension can be created using its
User Storage SPI to use Koha as the user database for Keycloak. This
API allows us to authenticate the user as a particular Koha user - without
creating a Koha user session for them.

Test plan:
0. Apply patch and koha-plack --restart kohadev
1. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=RESTBasicAuth
2. Enable "RESTBasicAuth"
3. Run the following commands while substituting correct values for <koha_user>
and <koha_password>
3. curl -XPOST -H "Content-Type: application/json" -u
<koha_user>:<koha_password>
http://localhost:8081/api/v1/auth/password/validation -d '{ "username":
"<koha_username">, "password": "<koha_password>" }' -v
4. Note "204 No Content" response
5. curl -XPOST -H "Content-Type: application/json" -u
<koha_user>:<koha_password>
http://localhost:8081/api/v1/auth/password/validation -d '{ "username":
"<koha_username">, "password": "this is definitely not the password" }' -v
6. Note "400 Bad Request" response and error message {"error":"Validation
failed"}

Signed-off-by: David Nind <david at davidnind.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen at theke.io>

-- 
You are receiving this mail because:
You are watching all bug changes.


More information about the Koha-bugs mailing list