This change adds a mfa_range configuration option for TOTP
to koha-conf.xml, and overrides the "verify" method from
Auth::GoogleAuth in order to provide a new default for "range"
Test plan:
0. Apply the patch
1. koha-plack --restart kohadev
2. Go to
http://localhost:8081/cgi-bin/koha/admin/preferences.pl?op=search&searchfield=TwoFactorAuthentication
3. Change the syspref to "Enable"
4. Go to
http://localhost:8081/cgi-bin/koha/members/moremember.pl?borrowernumber=51
5. Click "More" and "Manage two-factor authentication"
6. Register using an app
7. In an Incognito window, go to
http://localhost:8081/cgi-bin/koha/mainpage.pl
8. Sign in with the "koha" user
9. Note down a code from your Authenticator app
10. Wait until after 60 seconds and try it
11. Note it says "Invalid two-factor code"
12. Try a new code from the app
13. Note that it works
14. Add <mfa_range>10</mfa_range> to /etc/koha/sites/kohadev/koha-conf.xml
15. Clear memcached and koha-plack --restart kohadev
16. Sign in with the "koha" user
17. Note down a code from your Authenticator app
18. Wait 4 minutes and then try it
19. Note that it works
20. Disable your two-factor authentication and click to re-enable it
21. Use a code older than 60 seconds when registering for the two
factor authentication
22. Note that the code works
Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit
|
||
|---|---|---|
| .. | ||
| SIPconfig.xml | ||
| apache-shared-disable.conf | ||
| apache-shared-intranet-plack.conf | ||
| apache-shared-intranet.conf | ||
| apache-shared-opac-plack.conf | ||
| apache-shared-opac.conf | ||
| apache-shared.conf | ||
| apache-site-https.conf.in | ||
| apache-site.conf.in | ||
| koha-common.conf | ||
| koha-conf-site.xml.in | ||
| koha-core.conf | ||
| koha-sites.conf | ||
| koha-worker@.service | ||
| log4perl-site.conf.in | ||
| marc21-retrieval-info-auth-dom.xml | ||
| marc21-retrieval-info-bib-dom.xml | ||
| plack.psgi | ||
| unimarc-retrieval-info-auth-dom.xml | ||
| unimarc-retrieval-info-bib-dom.xml | ||
| zebra-authorities-dom-site.cfg.in | ||
| zebra-biblios-dom-site.cfg.in | ||
| zebra.passwd.in | ||