Я создаю платформу видео по запросу, аналогичную netflix. Я хочу, чтобы пользователи, которые приобрели подписку, просматривали мои видео, чтобы иметь возможность смотреть их (а не загружать их). Я также не хочу, чтобы пользователи могли копировать источник URL-адреса видео и получать к нему доступ через новую вкладку (сейчас это работает, в нем говорится, что доступ запрещен).
Итак, что я сделал на данный момент я скопировал официальный код из документации Amazon, который якобы позволяет воспроизводить контент (в моем случае видео) только на указанном мной веб-сайте. Это политика:
{
"Version": "2008-10-17",
"Id": "Policy1408118342443",
"Statement": [
{
"Sid": "Stmt1408118336209",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::mybucket/*",
"Condition": {
"StringLike": {
"aws:Referer": [
"https://mywebsite/*",
"https://mywebsite/*"
]
}
}
}
]
Итак, что случилось, я не смог воспроизвести видео на моем сайте и не смог получить доступ к видео по прямому URL-адресу. Я попытался выбрать видеофайл и разрешить «Читать объект» для доступа publi c, но это сделало мое видео напрямую доступным только по URL-адресу, который мне не нужен.
Все мои разрешения «Блокировать публикацию c доступ» в настоящее время отключены, потому что, если они включены, я не могу редактировать политику корзины (при нажатии на кнопку «Сохранить» отображается сообщение «Доступ запрещен»).
У меня вопрос: как мне защитить свой видеоконтент от кражи через полосу пропускания? Я не хочу, чтобы человек покупал мое членство, а затем отправлял прямую ссылку на видео своим друзьям, чтобы все могли видеть. Предположительно для Amazon это возможно, но в чем проблема?
Также я планирую использовать Cloudfront после решения этой проблемы, так что, надеюсь, это не помешает.