diff --git a/core/modules/block/block.module b/core/modules/block/block.module
index 5be7c27..1fd451a 100644
--- a/core/modules/block/block.module
+++ b/core/modules/block/block.module
@@ -180,7 +180,7 @@ function block_menu() {
  * @see block_menu()
  */
 function _block_themes_access($theme) {
-  return user_access('administer blocks') && drupal_theme_access($theme);
+  return Drupal::request()->attributes->get('_account')->hasPermission('administer blocks') && drupal_theme_access($theme);
 }
 
 /**
diff --git a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockAccessController.php b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockAccessController.php
index 9990a2e..169a576 100644
--- a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockAccessController.php
+++ b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockAccessController.php
@@ -24,7 +24,7 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A
       return TRUE;
     }
     elseif (in_array($operation, array('update', 'delete'))) {
-      return user_access('administer blocks', $account);
+      return $account->hasPermission('administer blocks');
     }
   }
 
@@ -32,7 +32,7 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A
    * {@inheritdoc}
    */
   protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) {
-    return user_access('administer blocks', $account);
+    return $account->hasPermission('administer blocks');
   }
 
 }
diff --git a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockFormController.php b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockFormController.php
index cde78ae..1b69d5a 100644
--- a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockFormController.php
+++ b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockFormController.php
@@ -41,6 +41,7 @@ protected function prepareEntity() {
    */
   public function form(array $form, array &$form_state) {
     $block = $this->entity;
+    $account = \Drupal::request()->attributes->get('_account');
 
     if ($this->operation == 'edit') {
       // @todo Remove this once https://drupal.org/node/1981644 is in.
@@ -106,14 +107,14 @@ public function form(array $form, array &$form_state) {
         'js' => array(drupal_get_path('module', 'custom_block') . '/custom_block.js'),
       ),
       '#weight' => 20,
-      '#access' => $block->isNewRevision() || user_access('administer blocks'),
+      '#access' => $block->isNewRevision() || $account->hasPermission('administer blocks'),
     );
 
     $form['revision_information']['revision'] = array(
       '#type' => 'checkbox',
       '#title' => t('Create new revision'),
       '#default_value' => $block->isNewRevision(),
-      '#access' => user_access('administer blocks'),
+      '#access' => $account->hasPermission('administer blocks'),
     );
 
     // Check the revision log checkbox when the log textarea is filled in.
diff --git a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockTypeAccessController.php b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockTypeAccessController.php
index 95b74ac..150a688 100644
--- a/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockTypeAccessController.php
+++ b/core/modules/block/custom_block/lib/Drupal/custom_block/CustomBlockTypeAccessController.php
@@ -24,7 +24,7 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A
       return TRUE;
     }
     elseif (in_array($operation, array('update', 'delete'))) {
-      return user_access('administer blocks', $account);
+      return $account->hasPermission('administer blocks');
     }
   }
 
@@ -32,7 +32,7 @@ protected function checkAccess(EntityInterface $entity, $operation, $langcode, A
    * {@inheritdoc}
    */
   protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) {
-    return user_access('administer blocks', $account);
+    return $account->hasPermission('administer blocks');
   }
 
 }
diff --git a/core/modules/block/custom_block/lib/Drupal/custom_block/Plugin/Block/CustomBlockBlock.php b/core/modules/block/custom_block/lib/Drupal/custom_block/Plugin/Block/CustomBlockBlock.php
index 0d17fa1..0b75d63 100644
--- a/core/modules/block/custom_block/lib/Drupal/custom_block/Plugin/Block/CustomBlockBlock.php
+++ b/core/modules/block/custom_block/lib/Drupal/custom_block/Plugin/Block/CustomBlockBlock.php
@@ -79,9 +79,9 @@ public function build() {
       return array(
         '#markup' => t('Block with uuid %uuid does not exist. <a href="!url">Add custom block</a>.', array(
           '%uuid' => $uuid,
-          '!url' => url('block/add')
+          '!url' => url('block/add'),
         )),
-        '#access' => user_access('administer blocks')
+        '#access' => \Drupal::request()->attributes->get('_account')->hasPermission('administer blocks'),
       );
     }
   }
diff --git a/core/modules/block/lib/Drupal/block/Access/BlockThemeAccessCheck.php b/core/modules/block/lib/Drupal/block/Access/BlockThemeAccessCheck.php
index b5ca0b2..c6e71cf 100644
--- a/core/modules/block/lib/Drupal/block/Access/BlockThemeAccessCheck.php
+++ b/core/modules/block/lib/Drupal/block/Access/BlockThemeAccessCheck.php
@@ -28,7 +28,8 @@ public function appliesTo() {
    */
   public function access(Route $route, Request $request) {
     $theme = $request->attributes->get('theme');
-    return user_access('administer blocks') && drupal_theme_access($theme);
+    $account = \Drupal::request()->attributes->get('_account');
+    return $account->hasPermission('administer blocks') && drupal_theme_access($theme);
   }
 
 }
diff --git a/core/modules/block/lib/Drupal/block/BlockAccessController.php b/core/modules/block/lib/Drupal/block/BlockAccessController.php
index a4827e5..c4a4773 100644
--- a/core/modules/block/lib/Drupal/block/BlockAccessController.php
+++ b/core/modules/block/lib/Drupal/block/BlockAccessController.php
@@ -21,7 +21,7 @@ class BlockAccessController extends EntityAccessController {
    */
   protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account) {
     if ($operation != 'view') {
-      return user_access('administer blocks', $account);
+      return $account->hasPermission('administer blocks', $account);
     }
 
     // Deny access to disabled blocks.
diff --git a/core/modules/block/lib/Drupal/block/BlockFormController.php b/core/modules/block/lib/Drupal/block/BlockFormController.php
index 6041b2c..ab06768 100644
--- a/core/modules/block/lib/Drupal/block/BlockFormController.php
+++ b/core/modules/block/lib/Drupal/block/BlockFormController.php
@@ -119,7 +119,7 @@ public function form(array $form, array &$form_state) {
     //   this entire visibility settings section probably needs a separate user
     //   interface in the near future.
     $visibility = $entity->get('visibility');
-    $access = user_access('use PHP for settings');
+    $access = \Drupal::request()->attributes->get('_account')->hasPermission('use PHP for settings');
     if (!empty($visibility['path']['visibility']) && $visibility['path']['visibility'] == BLOCK_VISIBILITY_PHP && !$access) {
       $form['visibility']['path']['visibility'] = array(
         '#type' => 'value',
diff --git a/core/modules/block/tests/modules/block_test/lib/Drupal/block_test/Plugin/Block/TestBlockInstantiation.php b/core/modules/block/tests/modules/block_test/lib/Drupal/block_test/Plugin/Block/TestBlockInstantiation.php
index 4c28638..2bb6d7e 100644
--- a/core/modules/block/tests/modules/block_test/lib/Drupal/block_test/Plugin/Block/TestBlockInstantiation.php
+++ b/core/modules/block/tests/modules/block_test/lib/Drupal/block_test/Plugin/Block/TestBlockInstantiation.php
@@ -35,7 +35,7 @@ public function settings() {
    * {@inheritdoc}
    */
   public function access() {
-    return user_access('access content');
+    return Drupal::request()->attributes->get('_account')->hasPermission('access content');
   }
 
   /**
