Как разрешить пользователям с необходимым разрешением скачивать файл через php?

У меня есть php-файл, который действует как привратник для всех файлов, которые я хочу, чтобы люди скачивали, у которых достаточно привилегий.

Код, который я использую, бросает файл пользователю

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header("Content-disposition: attachment; filename=\"".$public_filename."\""); 
header("Content-Transfer-Encoding: Binary"); 
header('Expires: 0');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header("Content-length: ".$f_filesize); 
readfile($file_path);

Большинство файлов довольно большие .... 400 МБ-10 ГБ.

Что может быть хорошим способом сделать это, и держать в тайне истинные местоположения + имена файлов, чтобы люди не могли просто ссылаться на файлы напрямую, но ДОЛЖНЫ связываться через мой файл download.php? File = ID gatekeeper?

Спасибо

РЕДАКТИРОВАТЬ: Я не спрашиваю, как сделать аутентификацию пользователя, все, что сделано. Я просто спрашиваю, является ли мой способ сделать это хорошей идеей в больших масштабах. Похоже, это может вызвать проблемы с памятью, если я продолжу читать файлы 10 ГБ.

Ответы на вопрос(5)

Ваш ответ на вопрос