Generare un token HMAC firmato

Ogni richiesta di segmento o manifest effettuata utilizzando la pubblicazione di pod deve includere un token firmato con HMAC per l'autenticazione, come fallback delle notifiche di interruzione pubblicitaria anticipata.

Questo token può essere calcolato una volta per interruzione pubblicitaria e condiviso in tutte le sessioni di streaming.

Raccogliere i parametri del token

Raccogli le seguenti informazioni dall'interruzione pubblicitaria corrente per compilare il corpo del token.

Parametri token
ad_break_id Obbligatorio se non viene fornito il parametro pod_id. L'identificatore stringa dell'interruzione pubblicitaria.
custom_asset_key Obbligatorio se non viene fornito il parametro event. La chiave asset personalizzata del live streaming, da Google Ad Manager.
cust_params Facoltativo I parametri di targeting personalizzato per la pausa pubblicitaria.
event Obbligatorio se non viene fornito il parametro custom_asset_key. La chiave asset del live streaming, generata da Google Ad Manager.
exp Obbligatorio Timestamp di scadenza di questo token in secondi.
network_code Obbligatorio se viene fornito il parametro custom_asset_key. Il codice di rete Ad Manager 360 per questa rete.
pod_id Obbligatorio se non viene fornito il parametro ad_break_id. L'identificatore numerico dell'interruzione pubblicitaria.
pd Obbligatorio, tranne per gli eventi con interruzioni pubblicitarie senza durata abilitate. La durata in millisecondi dell'interruzione pubblicitaria.
scte35 Facoltativo Il segnale SCTE-35 codificato in Base64 per l'interruzione pubblicitaria.

Crea stringa del token

elenca ogni parametro in ordine alfabetico, nel formato name=value, con ogni coppia nome-valore separata da una tilde (~).

I parametri facoltativi senza valore possono essere lasciati sul posto con una stringa vuota per il valore o rimossi completamente.

formato stringa token

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

Generare la firma HMAC

La firma HMAC è un hash SHA-256 della stringa del token in formato esadecimale. La chiave segreta è la chiave di autenticazione HMAC associata al tuo evento live streaming in Google Ad Manager.

Stringa token di firma

Una volta generata, aggiungi la firma HMAC alla stringa del token nel seguente formato

~hmac={HMAC signature}

Codifica URL della stringa del token

Questo token viene passato come parametro URL, quindi deve essere codificato nell'URL per sicurezza.

Esempio 1

Ecco un esempio in cui i parametri facoltativi inutilizzati sono inclusi come stringhe vuote.

Stringa token

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

Chiave secret

A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F

Firma HMAC

ea1081cc1ab83cacd1e64073fc19e64616b2571249232917dc9f539cafb4b94e

Token firmato

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

Token firmato con codifica URL:

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

Esempio 2

Ecco un esempio in cui le variabili facoltative non compilate vengono omesse completamente.

Stringa token

custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5
Chiave secret
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
Firma HMAC
6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9

Token firmato

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

Token firmato con codifica URL

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

Esempio 3

Ecco un esempio con ad_break_id.

Stringa token

ad_break_id=adbreak1~custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000
Chiave secret
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
Firma HMAC
327b23b80d032b0fa4c41b64a5e44fa7733af5bdbf173b7d89135aef05ae6d29

Token firmato

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

Token firmato con codifica URL

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