Создать подписанный токен HMAC

Каждый запрос сегмента или манифеста, выполняемый с использованием pod-сервера, должен включать токен, подписанный HMAC, для аутентификации, в качестве резервного варианта для ранних уведомлений о рекламных паузах .

Этот токен можно рассчитать один раз за рекламную паузу и использовать во всех сеансах просмотра.

Соберите параметры токена.

Для заполнения тела токена соберите следующую информацию из текущего рекламного блока.

Параметры токена
ad_break_id Обязательно, если параметр pod_id не указан. Строковый идентификатор для рекламной паузы.
custom_asset_key Обязательно, если параметр event не указан. Ключ для пользовательского ресурса прямой трансляции из Google Ad Manager.
cust_params Необязательный Пользовательские параметры таргетинга для рекламной паузы.
event Обязательно, если параметр custom_asset_key не указан. Ключ для трансляции в прямом эфире, сгенерированный Google Ad Manager.
exp Необходимый Отметка времени истечения срока действия этого токена в секундах.
network_code Обязательно, если указан параметр custom_asset_key . Код сети Ad Manager 360 для этой сети.
pod_id Обязательно, если параметр ad_break_id не указан. Числовой идентификатор рекламной паузы.
pd Обязательно, за исключением мероприятий с включенными рекламными паузами без указания продолжительности. Продолжительность рекламной паузы в миллисекундах.
scte35 Необязательный Сигнал SCTE-35, закодированный в Base64, для рекламной паузы.

Создать строку токена

Перечислите каждый параметр в алфавитном порядке в формате name=value , при этом каждая пара имя-значение разделена символом тильды ( ~ ).

Необязательные параметры, не имеющие значения, можно оставить без изменений, указав в качестве значения пустую строку, или удалить полностью.

формат строки токена

custom_asset_key={custom_asset_key}~exp={expiration}~network_code={network_code}~pd={pod_duration}~pod_id={ad_pod_index}~scte35={scte35_message}

Сгенерировать HMAC-подпись

Подпись HMAC представляет собой хеш SHA-256 строки токена в шестнадцатеричном формате. Секретный ключ — это ключ аутентификации HMAC , связанный с вашим событием прямой трансляции в Google Ad Manager.

Строка токена подписи

После генерации добавьте HMAC-подпись к строке токена в следующем формате.

~hmac={HMAC signature}

URL-кодированная строка токена

Этот токен передается в качестве параметра URL, поэтому для обеспечения безопасности его необходимо закодировать в формате URL.

Пример 1

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

Строка токена

cust_params=~custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5~scte35=

Секретный ключ

A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F

Подпись HMAC

ea1081cc1ab83cacd1e64073fc19e64616b2571249232917dc9f539cafb4b94e

Подписанный токен

cust_params=~custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5~scte35=~hmac=ea1081cc1ab83cacd1e64073fc19e64616b2571249232917dc9f539cafb4b94e

Подписанный токен в URL-кодировке:

cust_params%3D~custom_asset_key%3DiYdOkYZdQ1KFULXSN0Gi7g~exp%3D1489680000~network_code%3D6062~pd%3D180000~pod_id%3D5~scte35%3D~hmac%3Dea1081cc1ab83cacd1e64073fc19e64616b2571249232917dc9f539cafb4b94e

Пример 2

Вот пример, где незаполненные необязательные переменные полностью опущены.

Строка токена

custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5
Секретный ключ
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
Подпись HMAC
6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9

Подписанный токен

custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5~hmac=6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9

Подписанный токен в URL-кодировке

custom_asset_key%3DiYdOkYZdQ1KFULXSN0Gi7g~exp%3D1489680000~network_code%3D6062~pd%3D180000~pod_id%3D5~hmac%3D6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9

Пример 3

Вот пример с ad_break_id .

Строка токена

ad_break_id=adbreak1~custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000
Секретный ключ
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
Подпись HMAC
327b23b80d032b0fa4c41b64a5e44fa7733af5bdbf173b7d89135aef05ae6d29

Подписанный токен

ad_break_id=adbreak1~custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~hmac=327b23b80d032b0fa4c41b64a5e44fa7733af5bdbf173b7d89135aef05ae6d29

Подписанный токен в URL-кодировке

ad_break_id%3Dadbreak1~custom_asset_key%3DiYdOkYZdQ1KFULXSN0Gi7g~exp%3D1489680000~network_code%3D6062~pd%3D180000~hmac%3D327b23b80d032b0fa4c41b64a5e44fa7733af5bdbf173b7d89135aef05ae6d29

Генератор токенов