Я пытаюсь разработать веб-сайт с сотнями и сотнями видео. Здесь я хочу, чтобы клиент, который заплатил за видео, мог только смотреть видео. Все видео будут загружены в корзину AWS s3, и я должен использовать подписанный URL для видео корзины.
Это сгенерирует URL как:
https://s3-us-west-1.amazonaws.com/test/test.mp4?X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA123123123JSH7T7Z4QEPOPEYA%2F20160909%2Fus-west-1%2Fs3%2Faws4_request&X-Amz-Date=20160909T115345Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3000&X-Amz-Signature=testestsetset
Видео будет воспроизводиться путем простого добавления указанного выше URL-адреса в проигрыватель JW, другой пользователь также может просмотреть это видео, просто позвонив по этому URL-адресу в браузере или поместив этот URL-адрес в проигрыватель JW. Я хочу, чтобы AWS разрешил доступ к определенному URL-адресу только через мой веб-сайт.
Допустим, пользователь «А» заплатил 10 долларов за видео «Х», и ему присвоен подписанный URL «А». Таким образом, подписанный URL «A» для видео «X» доступен только пользователю «A», пользователь «A» не может использовать этот URL-адрес AWS, если он не вошел на мой веб-сайт.
Конкретный URL-адрес, назначенный корзине AWS S3, доступен только при входе пользователя в мою систему, когда он приобрел это видео.
Задача ещё не решена.
Других решений пока нет …