diff --git a/role_delegation.module b/role_delegation.module
index 2c5ee40..421f6cb 100644
--- a/role_delegation.module
+++ b/role_delegation.module
@@ -11,6 +11,7 @@
  * without needing access to the user edit form.
  */
 
+use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Render\Element;
 use Drupal\Core\Routing\RouteMatchInterface;
 use Drupal\user\Entity;
@@ -46,3 +47,19 @@ function role_delegation_user_role_delete(RoleInterface $entity) {
     $role->save();
   }
 }
+
+
+/**
+ * Implements hook_form_FORM_ID_alter().
+ */
+function role_delegation_form_views_form_user_admin_people_page_1_alter(&$form, FormStateInterface $form_state, $form_id) {
+  $account = \Drupal::currentUser();
+  $options = &$form['header']['user_bulk_form']['action']['#options'];
+  foreach (array_keys($options) as $key) {
+    if (preg_match('/user_(add|remove)_role_action\.(?P<role>.*)/', $key, $matches)) {
+      if (!$account->hasPermission(sprintf('assign %s role', $matches['role'])) && !$account->hasPermission('assign all roles')) {
+        unset($options[$key]);
+      }
+    }
+  }
+}
