Browse Source

Bug 28786: Correctly inherit from Auth::GoogleAuth

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Fridolin Somers <fridolin.somers@biblibre.com>
22.05.x
Jonathan Druart 3 years ago
committed by Fridolin Somers
parent
commit
d827ee310a
  1. 2
      C4/Auth.pm
  2. 6
      Koha/Auth/TwoFactorAuth.pm
  3. 4
      members/two_factor_auth.pl

2
C4/Auth.pm

@ -909,7 +909,7 @@ sub checkauth {
&& ( my $otp_token = $query->param('otp_token') ) )
{
my $patron = Koha::Patrons->find( { userid => $userid } );
my $auth = Koha::Auth::TwoFactorAuth::get_auth( { patron => $patron } );
my $auth = Koha::Auth::TwoFactorAuth->new( { patron => $patron } );
my $verified = $auth->verify($otp_token);
$auth->clear;
if ( $verified ) {

6
Koha/Auth/TwoFactorAuth.pm

@ -38,8 +38,8 @@ It's based on Auth::GoogleAuth
=cut
sub get_auth {
my ($params) = @_;
sub new {
my ($class, $params) = @_;
my $patron = $params->{patron};
my $secret = $params->{secret};
my $secret32 = $params->{secret32};
@ -52,7 +52,7 @@ sub get_auth {
my $key_id = sprintf "%s_%s",
$issuer, ( $patron->email || $patron->userid );
return Auth::GoogleAuth->new(
return $class->SUPER::new(
{
( $secret ? ( secret => $secret ) : () ),
( $secret32 ? ( secret32 => $secret32 ) : () ),

4
members/two_factor_auth.pl

@ -48,7 +48,7 @@ my $op = $cgi->param('op') // '';
if ( $op eq 'register-2FA' ) {
my $pin_code = $cgi->param('pin_code');
my $secret32 = $cgi->param('secret32');
my $auth = Koha::Auth::TwoFactorAuth::get_auth(
my $auth = Koha::Auth::TwoFactorAuth->new(
{ patron => $logged_in_user, secret32 => $secret32 } );
my $verified = $auth->verify(
@ -75,7 +75,7 @@ if ( $op eq 'register-2FA' ) {
if ( $op eq 'enable-2FA' ) {
my $secret = Koha::AuthUtils::generate_salt( 'weak', 16 );
my $auth = Koha::Auth::TwoFactorAuth::get_auth(
my $auth = Koha::Auth::TwoFactorAuth->new(
{ patron => $logged_in_user, secret => $secret } );
my $secret32 = $auth->generate_secret32;

Loading…
Cancel
Save