Présentation

La protection du contenu vidéo contre tout accès non autorisé est l'une des principales priorités des entreprises de médias. Les vidéos piratées ont un impact sur leur activité en raison de la perte de revenus liée aux abonnements ou à la publicité, et des responsabilités légales envers les détenteurs de droits sur le contenu.

Blocage géographique

Lorsque vous êtes autorisé à diffuser du contenu exclusivement dans des pays spécifiques, vous devez bloquer les demandes provenant d'autres pays. Cet article explique les différentes options dont vous disposez pour le blocage géographique à l'aide de CloudFront, d'AWS WAF et des fonctions de périphérie. Lorsque vous utilisez AWS WAF pour le blocage géographique, considérez deux groupes de règles gérés, qui sont pertinents dans le cas du streaming vidéo afin de bloquer les utilisateurs qui utilisent des VPN pour contourner votre politique de blocage géographique :

Solution de création de jetons simple pour les clients basés sur le Web

Lorsque votre application est uniquement accessible via des navigateurs (par opposition à des applications mobiles ou à des téléviseurs intelligents), envisagez d'utiliser les cookies signés natifs de CloudFront, un simple mécanisme de création de jetons permettant de bloquer les utilisateurs non autorisés sans frais supplémentaires. Il vous suffit d'activer les cookies signés sur votre distribution de streaming CloudFront, puis de mettre à jour votre backend pour générer et définir le cookie sur le domaine de diffusion (par exemple en utilisant l'en-tête de réponse Set-Cookie ou en utilisant javascript et un appel d'API). Les demandes ultérieures du lecteur dans le navigateur contiendront le cookie signé et seront autorisées par CloudFront. Pour en savoir plus sur cette implémentation, consultez les séries de blogs suivantes (1 et 2).

Une autre approche multi-CDN pour relever les défis mentionnés ci-dessus consiste à utiliser CloudFront comme origine pour vos autres CDN. Cependant, cette approche nécessite un examen plus approfondi de la redondance de l'architecture. Par exemple, il est recommandé de désactiver Origin Shield ou le cache centralisé des CDN tiers lorsque CloudFront est utilisé comme origine, afin de réduire le rayon d'action d'une altération localisée du PoP CloudFront. Il est également recommandé d'activer Origin Shield sur CloudFront pour augmenter la disponibilité et le taux d'accès au cache. Si vous avez conclu un contrat de tarification privé CloudFront et que vous souhaitez implémenter cette architecture, contactez l'équipe chargée de votre compte AWS pour en discuter.

Solution de création de jetons avancée

Pour les cas d'utilisation avancés, lorsque vous disposez d'une base d'appareils utilisateur hétérogène (décodeurs, téléviseurs intelligents) et que vous avez besoin d'une logique de création de jetons plus sophistiquée avec des champs personnalisés calculés dans la signature du jeton, pensez à la solution livraison sécurisée des médias en périphérie. Il s'agit d'une solution de création de jetons basée sur JWT, qui présente les avantages suivants :

  • Le jeton fait partie du chemin et ne nécessite que peu ou pas de modifications du côté du client ou du serveur, ce qui rend la solution très simple à intégrer à votre flux de travail vidéo :\
  • Les jetons basés sur le chemin, contrairement aux jetons basés sur les cookies, sont pris en charge par tous les types d'appareils.
    La signature du jeton est personnalisable, ce qui vous permet d'inclure différentes dimensions telles que l'adresse IP, le pays, l'en-tête de l'agent utilisateur, etc.
  • Il est basé sur les fonctions CloudFront, ce qui le rend évolutif et rentable, même pour les événements de grande envergure.

En outre, la solution vous fournit un SDK pour générer le jeton, un exemple d'interface utilisateur pour le tester et, surtout, un système de révocation de session pour détecter et bloquer automatiquement les sessions piratées en quelques minutes.

Remarque Fonctions CloudFront vient de publier KeyValueStore, que vous souhaiterez peut-être étudier et utiliser comme alternative pour stocker des jetons bloqués/révoqués et/ou implémenter une logique personnalisée supplémentaire dans votre fonction CloudFront.

AWS re:Invent 2022 – Étude de cas Formule 1 : F1TV avec les services de médias et de périphérie AWS

Ressources

Cette page vous a-t-elle été utile ?