tocdepth

2

Дополнительные настройки HLS-pull

Дополнительные настройки ресурса вы можете задать в процессе его создания или после — на вкладке Настройки ресурса.

По умолчанию после сохранения настроек ваш контент будет доступен по HTTPS и домен будет иметь следующий вид https://example.a.trbcdn.net.

SSL-сертификат

Если у вас есть свой сертификат и вы указали его в разделе SSL-сертификаты, выберите его из выпадающего списка.

Если вы не указали свой сертификат в разделе SSL-сертификаты и начали создавать ресурс, сертификат можно загрузить позже и прикрепить его к созданному ресурсу.

Если у вас нет сертификата, в разделе SSL-сертификаты вы сможете сделать заказ на выпуск бесплатного wildcard-сертификата Let’s Encrypt.

Желаемый CNAME

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

По умолчанию ваш контент будет доступен по example.a.trbcdn.net/images/1.jpg, но вы можете настроить доступ к своему контенту по адресу cdn.example.ru/images/1.jpg. Для этого нужно создать CNAME-запись по приведенной ниже инструкции.

Запись нужно создать на тех серверах, на которые делегирован ваш домен. Для этого:

  1. Откройте страницу управления DNS на сайте компании, предоставляющей вам услуги поддержки DNS.

  2. Создайте CNAME-запись со следующими значениями полей (в разных панелях управления названия полей могут отличаться):

    • Имя (Хост) — cdn. В некоторых панелях управления в качестве имени записи требуется указывать полное имя поддомена, например, cdn.example.ru.

    • Значение — example.a.trbcdn.net.

  3. Подождите, пока изменения в DNS вступят в силу. Этот процесс может длиться до 72 часов.

Если при настройке Live-ресурса был указан желаемый CNAME — в вкладке Инструкция по настройке + Плеер будет описана настройка CNAME на вашем DNS-сервере и представлена дополнительная CDN-ссылка на плейлист.

../_images/live__hls_cache_cname_settings.png

Локальная авторизация

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

В данном случае авторизация запросов пользователей выполняется исключительно в сети Cloud.ru, внешние ресурсы не используются.

В момент обращения пользователя к защищенному ресурсу владельцу контента необходимо сформировать специальную ссылку.

Пример ссылки: http://example.a.trbcdn.net/path/to/stream/playlist.m3u8?md5=ycmYPfxHwqjnIM93o7JNOA&e=1387984517

Ссылка содержит авторизационный параметр md5(<md5 hash>[,<expires>]) в пути:

  • md5 hash— хеш MD5 в формате Base64 for URL, сгенерированный на основе URI запрошенного ресурса, времени жизни ссылки, секретного ключа, IP-адреса пользователя (опционально);

  • expires — время окончания действия ссылки в формате POSIX time (необязательный параметр).

При обращении к контенту с использованием сгенерированной ссылки, CDN вычисляет значение MD5 и сравнивает его с полученным. Если значение MD5 не совпадает, то пользователю возвращается ответ с кодом 403 Forbidden (запрет на воспроизведение).

Если текущее время превышает значение expires, то пользователю возвращается ответ с кодом 410 Gone (целевой ресурс больше недоступен).

Пример алгоритма расчета MD5-хеша с использованием IP-адреса пользователя в качестве одного из входных параметров:

md5 = base64_url(md5(SECRET/path/to/stream1.2.3.4expiretime))

Пример алгоритма расчета MD5-хеша, если IP-адрес не учитывается:

md5 = base64_url(md5(SECRET/path/to/streamexpiretime))

Внимание

  • Доменная часть URI при вычислении хеша не используется.

  • При генерации MD5 в URL не должно быть символов в формате URL encode. Должны быть исходные символы: кириллица, пробелы, проценты и т.д. Запрашивать с этим хешем необходимо закодированный вариант URL.

Можно подписывать часть пути (например, для /path/to/file можно подписать сам файл, /path/to, /path).

Пример генерации ссылки:

Есть следующие входные данные:

  • секретный ключ: zah5Mey9Quu8Ea1k

  • IP-адрес пользователя: 1.2.3.4

  • URI потока: http://example.a.trbcdn.net/path/to/stream/playlist.m3u8

  1. Вычисляем время действия ссылки. В приведенном примере — неделя с момента генерации.

    $ php -r 'print time() + (7 * 24 * 60 * 60) . "\n";'
    1387984517
    
  2. Вычисляем хеш MD5 в формате Base64 for URL (путь указываем до плейлиста):

    $ php -r 'print str_replace("=", "",strtr(base64_encode(md5("zah5Mey9Quu8Ea1k/path/to/stream1.2.3.41387984517", TRUE)), "+/", "-_")) . "\n";'
    ycmYPfxHwqjnIM93o7JNOA
    
  3. Итоговая ссылка: http://example.a.trbcdn.net/path/to/stream/playlist.m3u8?md5=ycmYPfxHwqjnIM93o7JNOA&e=1387984517

При локальной авторизации контролируются следующие параметры:

  • URI запрашиваемого ресурса. Проверяется, что ссылка была сформирована именно для этого файла.

  • Секретный ключ. Проверяется, что ссылка сформирована именно владельцем контента.

  • Время окончания действия ссылки (опционально). Вы можете отключить проверку, выбрав опцию Не ограничивать по времени.

  • IP-адрес пользователя (опционально). Проверяется, что ресурс запрошен именно с того IP-адреса, для которого была сформирована ссылка. Вы можете отключить проверку, выбрав опцию Не учитывать IP адрес.

Внешняя авторизация

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

Решение о доступе к контенту принимается на основе ответа вашего скрипта, ссылку на который вы указываете в личном кабинете при создании/редактировании ресурса.

Если от скрипта авторизации пришел ответ со статусом 200, то доступ к контенту разрешен. В противном случае — доступ запрещен.

Авторизационному скрипту передаются следующие заголовки:

  • Host — содержит имя домена, для которого предназначен запрос.

  • X-Request-URI — содержит URI запрашиваемого ресурса.

  • X-Forwarded-For — содержит реальный IP-адрес пользователя, который запрашивает ресурс.

  • X-Remote-Addr — содержит IP-адрес пользователя, который запрашивает ресурс или прокси-сервера.

Ограничения раздачи

В этом разделе вы можете установить ограничения раздачи контента в зависимости от страны и региона, IP адреса, заголовка referer или User-Agent.

DVR

Необходимо активировать эту опцию, если вам нужно использовать функцию навигации по эфиру (DVR).

Перед включением опции с вами свяжется менеджер.

Запись потока

Активируйте эту функцию, если вам нужно сохранить запись потока.

Перед включением опции с вами свяжется менеджер.

Название ресурса

Для изменения названия ресурса введите в поле новое название ресурса и нажмите Сохранить. Название ресурса генерируется автоматически на этапе создания.

Запустили Evolution free tier
для Dev & Test
Получить