Koha/koha-tmpl/intranet-tmpl/prog/en/modules
Jonathan Druart 6eeb9bc1b3 Bug 28786: Two-factor authentication for staff client - TOTP
This patchset introduces the Two-factor authentication (2FA) idea in
Koha.

It is far for complete, and only implement one way of doing it, but at
least it's a first step.
The idea here is to offer the librarian user the ability to
enable/disable 2FA when logging in to Koha.

It will use time-based, one-time passwords (TOTP) as the second factor,
an application to handle that will be required.

https://en.wikipedia.org/wiki/Time-based_One-Time_Password

More developements are possible on top of this:
* Send a notice (sms or email) with the code
* Force 2FA for librarians
* Implementation for OPAC
* WebAuthn, FIDO2, etc. - https://fidoalliance.org/category/intro-fido/

Test plan:
 0.
  a. % apt install -y libauth-googleauth-perl && updatedatabase && restart_all
  b. To test this you will need an app to generate the TOTP token, you can
 use FreeOTP that is open source and easy to use.
 1. Turn on TwoFactorAuthentication
 2. Go to your account, click 'More' > 'Manage Two-Factor authentication'
 3. Click Enable, scan the QR code with the app, insert the pin code and
 register
 4. Your account now requires 2FA to login!
 5. Notice that you can browse until you logout
 6. Logout
 7. Enter the credential and the pincode provided by the app
 8. Logout
 9. Enter the credential, no pincode
10. Confirm that you are stuck on the second auth form (ie. you cannot
access other Koha pages)
11. Click logout => First login form
12. Enter the credential and the pincode provided by the app

Sponsored-by: Orex Digital

Signed-off-by: David Nind <david@davidnind.com>

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
2022-04-20 20:43:15 -10:00
..
acqui Bug 27631: (follow-up) Some minor corrections 2022-04-20 09:03:38 -10:00
admin Bug 28786: Add new syspref TwoFactorAuthentication 2022-04-20 20:43:15 -10:00
authorities Bug 27631: authorities, clubs, common, course_reserves folders 2022-04-20 09:03:37 -10:00
basket
batch
catalogue Bug 27631: (follow-up) Some minor corrections 2022-04-20 09:03:38 -10:00
cataloguing Bug 27631: cataloguing folder 2022-04-20 09:03:38 -10:00
circ Bug 30226: Add system preference AllowSetAutomaticRenewal 2022-04-20 20:43:14 -10:00
clubs Bug 27631: authorities, clubs, common, course_reserves folders 2022-04-20 09:03:37 -10:00
course_reserves Bug 27631: (follow-up) course_reserves/course-details.tt 2022-04-20 09:03:38 -10:00
errors
ill Bug 29602: Surround strings with span tag 2022-04-19 21:25:51 -10:00
installer Bug 27631: installer and onboarding folders 2022-04-20 09:03:37 -10:00
labels Bug 27631: labels and members folders 2022-04-20 09:03:37 -10:00
mana
members Bug 28786: Two-factor authentication for staff client - TOTP 2022-04-20 20:43:15 -10:00
offline_circ Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
onboarding Bug 27631: installer and onboarding folders 2022-04-20 09:03:37 -10:00
patron_lists
patroncards Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
plugins Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
pos Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
recalls
reports Bug 27631: (follow-up) reports/guided_reports_start.tt 2022-04-20 09:03:38 -10:00
reserve Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
reviews
rotating_collections Bug 27631: offline_circ, patroncards, plugins, pos, reserve, rotating_collections folders 2022-04-20 09:03:38 -10:00
serials Bug 30204: Add subtitle to serial search results 2022-04-20 20:43:15 -10:00
services
suggestion Bug 29602: (follow-up) fix duplicate, missing or mismatching <span> 2022-04-19 21:25:51 -10:00
tags Bug 27631: catalogue and tags folders 2022-04-20 09:03:38 -10:00
test
tools Bug 30288: Provide links to OPACUserJS and OPACUserCSS in tools 2022-04-20 20:43:15 -10:00
virtualshelves Bug 27631: tools and virtualshelves folders 2022-04-20 09:03:38 -10:00
about.tt Bug 30544: Add font awesome version to licenses page 2022-04-20 09:03:39 -10:00
auth.tt Bug 28786: Two-factor authentication for staff client - TOTP 2022-04-20 20:43:15 -10:00
intranet-main.tt Bug 27631: Hidden <h1> on intranet-main.tt 2022-04-20 09:03:38 -10:00