]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1393950 - Block users from signing into Phabricator unless they have MFA enabled
authorDylan William Hardison <dylan@hardison.net>
Wed, 29 Nov 2017 17:01:32 +0000 (12:01 -0500)
committerGitHub <noreply@github.com>
Wed, 29 Nov 2017 17:01:32 +0000 (12:01 -0500)
Bugzilla/WebService/User.pm

index 11a9e4b314dda2c8213a1e173cad1af01e5c4466..5f9b547872787b2d8037eb6dab9a7ee875e0949a 100644 (file)
@@ -418,18 +418,22 @@ sub mfa_enroll {
 
     my $user = Bugzilla->login(LOGIN_REQUIRED);
     $user->set_mfa($provider_name);
-    my $provider = $user->mfa_provider // die "Unknown MTA provider\n";
+    my $provider = $user->mfa_provider // die "Unknown MFA provider\n";
     return $provider->enroll_api();
 }
 
 sub whoami {
-    my ($self, $params) = @_;
+    my ( $self, $params ) = @_;
     my $user = Bugzilla->login(LOGIN_REQUIRED);
-    return filter $params, {
-        id        => $self->type('int', $user->id),
-        real_name => $self->type('string', $user->name),
-        name      => $self->type('email', $user->login),
-    };
+    return filter(
+        $params,
+        {
+            id         => $self->type( 'int',     $user->id ),
+            real_name  => $self->type( 'string',  $user->name ),
+            name       => $self->type( 'email',   $user->login ),
+            mfa_status => $self->type( 'boolean', !!$user->mfa ),
+        }
+    );
 }
 
 1;