/** @var \Drupal\file\FileInterface $entity */
if ($operation == 'download' || $operation == 'view') {
if (\Drupal::service('file_system')->uriScheme($entity->getFileUri()) === 'public') {
- // Always allow access to file in public file system.
- return AccessResult::allowed();
+ if ($operation === 'download') {
+ return AccessResult::allowed();
+ }
+ else {
+ return AccessResult::allowedIfHasPermission($account, 'access content');
+ }
}
elseif ($references = $this->getFileReferences($entity)) {
foreach ($references as $field_name => $entity_map) {