Если вы не собираетесь обслуживать очень небольшое количество таких запросов, любое решение, требующее обслуживания вашего контента через django, не будет масштабируемым.Для масштабирования в будущем вы, вероятно, захотите перенести хранилище и обслуживание контента на отдельный сервер, и тогда это не сработает.
Рекомендованным способом будет сохранение статического контента черезболее легкий сервер (такой как nginx).Чтобы повысить безопасность, передайте статическому серверу токен от django, установив cookie или используя параметры get.
Маркер должен иметь следующие значения: метка времени, имя файла, идентификатор пользователя.Он должен быть подписан через какой-то ключ приложением django.
Затем напишите небольшой модуль nginx, который проверяет токен и что у пользователя действительно есть доступ к файлу.Также следует проверить, что токен недостаточно стар, проверив отметку времени.