diff --git a/core/modules/user/src/Plugin/rest/resource/UserRegistrationResource.php b/core/modules/user/src/Plugin/rest/resource/UserRegistrationResource.php
index 6a243c3a1d..920fc4f135 100644
--- a/core/modules/user/src/Plugin/rest/resource/UserRegistrationResource.php
+++ b/core/modules/user/src/Plugin/rest/resource/UserRegistrationResource.php
@@ -102,7 +102,7 @@ public function post(UserInterface $account = NULL) {
 
     // Only activate new users if visitors are allowed to register and no email
     // verification required.
-    if ($this->userSettings->get('register') == USER_REGISTER_VISITORS && !$this->userSettings->get('verify_mail')) {
+    if ($this->userSettings->get('register') == USER_REGISTER_VISITORS) {
       $account->activate();
     }
     else {
diff --git a/core/modules/user/src/Tests/RestRegisterUserTest.php b/core/modules/user/src/Tests/RestRegisterUserTest.php
index 450c552919..f25fad5680 100644
--- a/core/modules/user/src/Tests/RestRegisterUserTest.php
+++ b/core/modules/user/src/Tests/RestRegisterUserTest.php
@@ -72,7 +72,7 @@ public function testRegisterUser() {
     $user_settings->save();
     $user = $this->registerUser('Jason.Taverner', FALSE);
     $this->assertTrue(empty($user->getPassword()));
-    $this->assertTrue($user->isBlocked());
+    $this->assertTrue($user->isActive());
     $this->assertMailString('body', 'You may now log in by clicking this link', 1);
 
     // Attempt to register with a password when e-mail verification is on.
diff --git a/core/modules/user/src/Tests/UserRegistrationTest.php b/core/modules/user/src/Tests/UserRegistrationTest.php
index 128b71b7da..e27b801740 100644
--- a/core/modules/user/src/Tests/UserRegistrationTest.php
+++ b/core/modules/user/src/Tests/UserRegistrationTest.php
@@ -62,6 +62,28 @@ public function testRegistrationWithEmailVerification() {
     $this->assertFalse($new_user->isActive(), 'New account is blocked until approved by an administrator.');
   }
 
+  public function testRegistrationWithEmailVerificationAndWithoutAdminApproval() {
+    $config = $this->config('user.settings');
+    // Require email verification.
+    $config->set('verify_mail', TRUE)->save();
+
+    // Allow registration by site visitors.
+    $config->set('register', USER_REGISTER_VISITORS)->save();
+    $this->drupalGet('user/register');
+    $edit = [];
+    $edit['name'] = $name = $this->randomMachineName();
+    $edit['mail'] = $mail = $edit['name'] . '@example.com';
+    $edit['pass[pass1]'] = $new_pass = $this->randomMachineName();
+    $edit['pass[pass2]'] = $new_pass;
+    $this->drupalPostForm(NULL, $edit, t('Create new account'));
+
+    // Check user fields.
+    $accounts = $this->container->get('entity_type.manager')->getStorage('user')
+      ->loadByProperties(['name' => $name, 'mail' => $mail]);
+    $new_user = reset($accounts);
+    $this->assertTrue($new_user->isActive(), 'New account is active so the user can access password reset page.');
+  }
+
   public function testRegistrationWithoutEmailVerification() {
     $config = $this->config('user.settings');
     // Don't require email verification and allow registration by site visitors
