Skip to content

CORS для защиты плеера

CORS (Cross-origin resource sharing) — это технология современных браузеров, которая позволяет ограничить доступ с одного домена к ресурсам другого домена. По сути, когда сервер A запрашивает какую-либо страницу с сервера B, ваш браузер проверяет, что ответ сервера B разрешает доступ для сервера A, о чем сигнализирует заголовок Access-Control-Allow-Origin в HTTP-ответе. Бывают и другие заголовки, которые вы можете выбрать в зависимости от рассматриваемого сценария.

Flussonic позволяет использовать CORS для того, чтобы разрешить доступ к плееру на странице embed.html только определенным доменам. Можно настроить CORS индивидуально для каждого потока или создать шаблон конфигурации потока.

Warning

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

Пример 1. Чтобы разрешить вставку плеера embed.html с потоком protected только на страницу example.com, в конфигурации потока нужно прописать директиву playback_headers и параметр header следующим образом:

stream protected {
  input fake://fake;
  playback_headers {
    header Access-Control-Allow-Origin example.com;
  }
}

Пример 2. Использование настроек CORS в шаблоне конфигурации потока:

template cors {
  playback_headers {
    protocols hls;
    playback live;
    header Access-Control-Allow-Origin example.com;
  }
}

stream fake {
  input fake://;
  template cors;
}