Загрузить видео на сайт и сохранить его в безопасности? (Django) - PullRequest
0 голосов
/ 02 апреля 2020

Для школьного проекта, над которым я работал, клиент попросил загрузить видео, но из-за конфиденциальности он хотел, чтобы видео было показано только для подписанных пользователей.

Я создал страницу чтобы быть защищенным, но загрузка видео была небольшой проблемой.

Я думал о расширенном режиме prvacy на youtube, но, поскольку различные пользователи будут загружать, это не был хороший способ сделать это.

Итак, мне было интересно,

  1. Может ли сервер / хост или веб-страница обрабатывать размер видео, загруженных пользователями?

  2. Будет html5 видео тег будет хорошо для этого?

  3. Был бы какой-нибудь другой хороший вариант в этом случае?

1 Ответ

1 голос
/ 03 апреля 2020

Здесь вы также увидите несколько похожих вопросов, но прежде всего определите, что вы имеете в виду под защитой видео:

  • , если вам просто нужно ограничить доступ, тогда есть число механизмов, которые вы можете использовать, например:

    • Использовать подписанные URL-адреса - вот пример AWS https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html

    • Запутывание URL - вы должны знать, что это может рассматриваться как проблема безопасности, в зависимости от того, как вы это делаете, поскольку пользователь может беспокоиться, что он не знает, куда идет URL

    • Аутентификация на основе сеанса или токена - это позволит вам сделать страницу или ресурс доступными только для аутентифицированных пользователей. Здесь вы найдете краткое изложение различий: https://security.stackexchange.com/a/92123
  • , если вам также требуется защита от пользователя с действительным доступом, который может копировать и распространять видео без вашего разрешения, тогда вам, как правило, нужно искать решение, которое шифрует видео.

В последнем пункте причина этого заключается в том, что даже если вы Запутывает процесс загрузки или потоковой передачи видео, в конечном счете, видео должно быть загружено на устройство для его воспроизведения, и не существует эффективного способа остановить его копирование.

Для решения этой проблемы обычно используется шифрование видео и предоставление ключа доверенным пользователям либо напрямую, либо через систему DRM.

Преимущество его предоставления в том, что оно простое и дешевое. Недостатком является то, что ненадежный пользователь может поделиться ключом или расшифрованным содержимым.

Преимущество системы DRM состоит в том, что доверенный пользователь, и даже приложение и ОС доверенных пользователей, никогда не видят ключ , так как сам ключ зашифрован системой DRM. Если система DRM взломана, то, скорее всего, будет больше целей, чем у вашего контента, и поставщик DRM также должен быстро противодействовать взлому. Недостатком системы DRM является дополнительная сложность и стоимость.

В конечном счете, безопасность заключается в установлении барьеров, а количество и сложность барьеров, которые вы хотите установить, обычно зависит от вероятной ценности вашего контента. злоумышленнику, поэтому решение обычно определяется вашим собственным конкретным решением и содержимым, которое вы хотите защитить.

...