Panoramica

La protezione dei contenuti video da accessi non autorizzati è una delle principali priorità delle società di media. I video piratati hanno un impatto sulla loro attività a causa della perdita di entrate derivanti da abbonamenti o pubblicità, oltre alle responsabilità legali nei confronti dei titolari dei diritti sui contenuti.

Blocco geografico

Se disponi dei diritti per lo streaming di contenuti esclusivamente in Paesi specifici, è necessario bloccare le richieste provenienti da altri Paesi. Questo articolo spiega le diverse opzioni disponibili per il blocco geografico utilizzando CloudFront, AWS WAF e le funzioni edge. Quando utilizzi AWS WAF per il blocco geografico, è necessario prendere in considerazione due gruppi di regole gestite, pertinenti nel caso dello streaming video, per bloccare gli utenti che utilizzano VPN per aggirare la tua policy di protezione geografica:

Soluzione di tokenizzazione semplice per client basati sul Web

Se la tua applicazione è accessibile solo tramite browser (anziché app mobili o Smart TV), prendi in considerazione l'utilizzo dei Cookie firmati nativi di CloudFront, un semplice meccanismo di tokenizzazione per bloccare gli utenti non autorizzati senza costi aggiuntivi. Tutto ciò che devi fare è abilitare i cookie firmati sulla tua distribuzione CloudFront in streaming, quindi aggiornare il backend per generare e impostare il cookie sul dominio di streaming (ad esempio utilizzando l'intestazione di risposta Set-Cookie o utilizzando javascript e una chiamata API). Le richieste successive del player nel browser conterranno il cookie firmato e saranno autorizzate da CloudFront. Scopri questa implementazione nella seguente serie di blog (1 e 2).

Un altro approccio multi-CDN per affrontare le sfide sopra menzionate consiste nell'utilizzare CloudFront come origine per le altre CDN (Rete di distribuzione di contenuti). Tuttavia, questo approccio richiede un controllo aggiuntivo sulla ridondanza dell'architettura. Ad esempio, se si utilizza CloudFront come origine si consiglia di disabilitare lo scudo di origine o la cache centralizzata della CDN di terze parti, per ridurre il raggio di impatto di un problema PoP localizzato di CloudFront. Si consiglia inoltre di abilitare Origin Shield su CloudFront per aumentare la disponibilità e il tasso di accesso alla cache. Se disponi di un contratto tariffario privato di CloudFront e desideri implementare questa architettura, contatta il team del tuo account AWS per discuterne.

Soluzione di tokenizzazione avanzata

Per casi d'uso avanzati, in cui disponi di una base di dispositivi utente eterogenea (Set Top Box, Smart TV) e hai bisogno di una logica di tokenizzazione più sofisticata con campi personalizzati calcolati nella firma del token, prendi in considerazione la soluzione di distribuzione sicura dei media a livello edge. Si tratta di una soluzione di tokenizzazione basata su JWT che offre i seguenti vantaggi:

  • Il token fa parte del percorso e richiede modifiche minime o nulle sul lato client o server, il che rende la soluzione molto semplice da integrare con il flusso di lavoro video.
  • I token basati sul percorso, a differenza dei token basati sui cookie, sono supportati da tutti i tipi di dispositivi.
    La firma del token è personalizzabile e consente di includere diversi parametri come IP, Paese, intestazione dell'agente utente, ecc.
  • La soluzione è basata sulle Funzioni CloudFront, il che la rende scalabile ed economica, anche per eventi su larga scala.

Inoltre, la soluzione fornisce un SDK per generare il token, un'interfaccia utente di esempio per testarlo e, soprattutto, un sistema di revoca della sessione per rilevare e bloccare automaticamente le sessioni pirata in pochi minuti.

Nota Funzioni CloudFront ha ora rilasciato KeyValueStore, che potresti voler esaminare e utilizzare come alternativa per archiviare token bloccati/revocati e/o implementare una logica personalizzata aggiuntiva nella tua funzione CloudFront.

AWS re:Invent 2022 - Caso di studio Formula 1: F1TV con media AWS e servizi edge

Risorse

Questa pagina ti è stata utile?