diff -u b/core/modules/media/src/MediaAccessControlHandler.php b/core/modules/media/src/MediaAccessControlHandler.php --- b/core/modules/media/src/MediaAccessControlHandler.php +++ b/core/modules/media/src/MediaAccessControlHandler.php @@ -39,6 +39,13 @@ if ($account->hasPermission('edit own ' . $type . ' media') && $is_owner) { return AccessResult::allowed()->cachePerPermissions()->cachePerUser()->addCacheableDependency($entity); } + // @todo: Deprecate this permissions in https://www.drupal.org/project/drupal/issues/2925459 + if ($account->hasPermission('update any media')) { + return AccessResult::allowed()->cachePerPermissions(); + } + if ($account->hasPermission('update media') && $is_owner) { + return AccessResult::allowed()->cachePerPermissions()->cachePerUser()->addCacheableDependency($entity); + } return AccessResult::neutral()->cachePerPermissions(); case 'delete': @@ -48,6 +55,13 @@ if ($account->hasPermission('delete own ' . $type . ' media') && $is_owner) { return AccessResult::allowed()->cachePerPermissions()->cachePerUser()->addCacheableDependency($entity); } + // @todo: Deprecate this permissions in https://www.drupal.org/project/drupal/issues/2925459 + if ($account->hasPermission('delete any media')) { + return AccessResult::allowed()->cachePerPermissions(); + } + if ($account->hasPermission('delete media') && $is_owner) { + return AccessResult::allowed()->cachePerPermissions()->cachePerUser()->addCacheableDependency($entity); + } return AccessResult::neutral()->cachePerPermissions(); default: