Alter the access rules applied to a file download.
Entities that implement file management set the access rules for their individual files. Module may use this hook to create custom access rules for file downloads.
$grants: An array of grants gathered by hook_file_download_access(). The array is keyed by the module that defines the entity type's access control; the values are Boolean grant responses for each module.
array $file_item: The array of information about the file to alter access for.
$entity_type: The type of $entity; for example, 'node' or 'user'.
$entity: The $entity to which $file is referenced.
function hook_file_download_access_alter(&$grants, $file_item, $entity_type, $entity) {
// For our example module, we always enforce the rules set by node module.
if (isset($grants['node'])) {
$grants = array(
'node' => $grants['node'],
);
}
}