подписанные URL-адреса и медиапакет aws cloudfront
Я использую медиапакет aws и облачный фронт aws для предоставления видео по запросу. Из соображений безопасности у меня есть авторизация cdn для моей группы упаковки в медиапакете, и она работает, что означает, что все активы доступны только из облачного фронта. Но для большей безопасности мне нужно ограничить доступ, используя подписанные URL-адреса. когда я включаю эту функцию в консоли облачного фронта, ограничение работает нормально, и мои URL-адреса возвращают 403, запрещенные. когда я подписываю URL-адрес, я не получаю 403, но проблема в том, что потоковая передача больше не работает. что означает, что у меня есть следующая ошибка в консоли моего браузера:
Доступ к XMLHttpRequest по адресу «https://xxxxxxxxxx.cloudfront.net/out/v1/xxxxxxxxxxxxxxx.m3u8» из источника «127.0.0.1:8000» заблокирован политикой CORS: нет заголовка «Access-Control-Allow-Origin». присутствует на запрошенном ресурсе.
1 ответ
Политика CORS здесь не имеет значения. Я думаю, что основная проблема заключается в том, что используемый вами проигрыватель не запрашивает дочерний манифест с подписанным URL-адресом или подпись, используемая в подписанном URL-адресе, недействительна.
Можете ли вы проверить URL-адрес, запрашивающий «https://xxxxxxxxxx.cloudfront.net/out/v1/xxxxxxxxxxxxxxx.m3u8» в режиме отладки, включает ли он срок действия, подпись и идентификатор пары ключей
Каждый манифест и сегменты имеют разные базовые URL-адреса. Это означает, что подпись, используемая в подписанном URL-адресе, отличается. Вы должны убедиться, что ваш плеер использует правильную подпись при воспроизведении.
Спасибо, Сэм