2013-05-15 4 views
1

У меня есть клиент-музыкант, который создал веб-приложение/сайт музыкального плеера, прежде всего в javascript несколько лет назад.Использование аутентификации Amazon S3 для музыкального проигрывателя

Аудиофайлы в формате mp3 захватываются через обычную загрузку HTTP.

Он заметил, что люди срывают музыку и используют свои треки в другом месте.

Я хочу сделать это труднее для людей, чтобы иметь возможность просто захватить mp3-файл со своего выделенного URL.

Я знаком с аутентификацией строки запроса Amazon S3 и думаю об использовании этого.

Мой план состоит в том, чтобы установить время истечения срока действия запроса примерно на 3 секунды, чтобы у игрока было время для начала загрузки, но если пользователь попытается захватить URL-адрес и сделать тот же запрос позже, их попытка будет заблокирован.

У меня есть 2 проблемы:

1) Будет ли скачать остановки, когда время истечения срока действия было достигнуто, даже если он находится на середине загрузки? Или он будет продолжать загружаться?

2) Есть ли лучший способ сделать что-то подобное?

ответ

2

Нет, URL должен быть действительным на момент начала загрузки. Начальная загрузка завершится, если время истечения будет достигнуто во время загрузки. Вот документ, подробно описывающий его, хотя он связан с подписанными URL-адресами CloudFront, он должен быть таким же для строки запроса S3 auth. (link)

Будьте осторожны с короткими сроками действия. Часы серверов Amazon (по крайней мере, я знаю это для экземпляров EC2 из собственного опыта) имеют тенденцию иметь большую неточность (около 10 секунд/день). Вы должны использовать ntp, чтобы синхронизировать часы.

1

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

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

Смежные вопросы