Я бы рекомендовал хранить их вне дерева.Таким образом, по умолчанию вам нужно разрешить доступ к ним, а не отключить доступ (на случай, если в вашем .htaccess / config / code есть ошибка, доступ к файлам отключен, не включен)
Во-вторых, избавьтесь от случайного каталога, это не сильно повысит безопасность, но это излишне усложнит реализацию
Вы можете использовать php, чтобы проверить учетные данные участника, поставить соответствующие заголовкинапример, etag и т. д.), и подайте файл через passthru или что-то подобное.