Utiliser Azure Front Door avec des objets blob stockage Azure

Azure Front Door accélère la distribution de contenu statique à partir d’objets blob stockage Azure et permet une architecture sécurisée et évolutive. La distribution de contenu statique est utile pour de nombreux cas d’usage différents, y compris l’hébergement de sites web et la livraison de fichiers.

Architecture

Diagram of Azure Front Door with a blob storage origin.

Dans cette architecture de référence, vous déployez un compte de stockage et un profil Front Door avec une origine unique.

Dataflow

Les données circulent dans le scénario comme suit :

  1. Le client établit une connexion sécurisée à Azure Front Door à l’aide d’un nom de domaine personnalisé et d’un certificat TLS fourni par Front Door. La connexion du client se termine à un point de présence Front Door proche.
  2. Le pare-feu d’applications web (WAF) Front Door analyse la requête. Si le pare-feu d’applications web détermine que le niveau de risque de la requête est trop élevé, il bloque la requête et Front Door retourne une réponse d’erreur HTTP 403.
  3. Si le cache du point de présence Front Door contient une réponse valide pour cette requête, Front Door retourne immédiatement la réponse.
  4. Sinon, le point de présence envoie la requête au compte de stockage d’origine, où qu’il se trouve dans le monde, en utilisant le réseau principal de Microsoft. Le point de présence se connecte au compte de stockage à l’aide d’une connexion TCP distincte, de longue durée de vie. Dans ce scénario, Private Link est utilisé pour se connecter de manière sécurisée au compte de stockage.
  5. Le compte de stockage envoie une réponse au point de présence Front Door.
  6. Lorsque le point de présence reçoit la réponse, il la stocke dans son cache pour les requêtes suivantes.
  7. Le point de présence retourne la réponse au client.
  8. Toutes les requêtes directement adressées au compte de stockage via Internet sont bloquées par le pare-feu Stockage Azure.

Composants

  • Stockage Azure stocke le contenu statique dans des objets blob.
  • Azure Front Door reçoit les connexions entrantes des clients, les analyse avec le pare-feu d’applications web, transfère en toute sécurité la requête au compte de stockage et met en cache les réponses.

Autres solutions

Si vous avez des fichiers statiques dans un autre fournisseur de stockage cloud ou si vous hébergez du contenu statique sur l’infrastructure que vous possédez et gérez, la plupart de ce scénario continue de s’appliquer. Toutefois, vous devez prendre en compte la façon dont vous protégez le trafic entrant vers votre serveur d’origine, pour vérifier qu’il passe par Front Door. Si votre fournisseur de stockage ne prend pas en charge Private Link, envisagez d’utiliser une autre approche, comme la liste verte de l’étiquette de service Front Door et l’inspection de l’X-Azure-FDIDen-tête.

Détails du scénario

La distribution de contenu statique est utile dans de nombreuses situations, comme ces exemples :

  • Livraison d’images, de fichiers CSS et de fichiers JavaScript pour une application web.
  • Services de fichiers et de documents, tels que des fichiers PDF ou des fichiers JSON.
  • Diffusion d’une vidéo sans diffusion en continu.

De par sa nature, le contenu statique ne change pas fréquemment. Les fichiers statiques peuvent également être de grande taille. Ces caractéristiques en font un bon candidat à mettre en cache, ce qui améliore les performances et réduit le coût de traitement des requêtes.

Dans un scénario complexe, un seul profil Front Door peut servir du contenu statique et dynamique. Vous pouvez utiliser des groupes d’origine distincts pour chaque type d’origine et utiliser les fonctionnalités de routage de Front Door pour acheminer les requêtes entrantes vers l’origine correcte.

Considérations

Scalabilité et performance

En tant que réseau de distribution de contenu (CDN), Front Door met en cache le contenu dans son réseau distribué à l’échelle mondiale de points de service. Lorsqu’une copie mise en cache d’une réponse est disponible dans un point de présence, Front Door peut répondre rapidement avec la réponse mise en cache. Le retour du contenu à partir du cache améliore les performances de la solution et réduit la charge sur l’origine. Si le point de présence n’a pas de réponse en cache valide, les fonctionnalités d’accélération du trafic de Front Door réduisent le temps de traitement du contenu à partir de l’origine.

Sécurité

Authentification

Front Door est conçu pour être accessible sur Internet et ce scénario est optimisé pour les objets blob accessibles au public. Si vous devez authentifier l’accès aux objets blob, envisagez d’utiliser des signatures d’accès partagé et assurez-vous d’activer le comportement de chaîne de requête Ignorer les chaînes de requête afin d’éviter que Front Door ne traite des requêtes pour les clients non authentifiés. Toutefois, cette approche peut ne pas utiliser efficacement le cache Front Door, car chaque requête avec une signature d’accès partagé différente doit être envoyée à l’origine séparément.

Sécurité de l’origine

Front Door se connecte de manière sécurisée au compte Stockage Azure à l’aide de Private Link. Le compte de stockage est configuré pour refuser l’accès direct à Internet et pour autoriser uniquement les requêtes via la connexion de point de terminaison privé utilisée par Front Door. Cette configuration garantit que chaque requête est traitée par Front Door et évite d’exposer le contenu de votre compte de stockage directement à Internet. Toutefois, cette configuration nécessite le niveau Premium d’Azure Front Door. Si vous utilisez le niveau standard, votre compte de stockage doit être accessible publiquement. Vous pouvez utiliser une signature d’accès partagé pour sécuriser les requêtes adressées au compte de stockage et demander au client d’inclure la signature sur toutes ses requêtes, ou utiliser le moteur de règles Front Door pour l’annexer à partir de Front Door.

Noms de domaine personnalisés

Front Door prend en charge les noms de domaine personnalisés et peut émettre et gérer des certificats TLS pour ces domaines. En utilisant des domaines personnalisés, vous pouvez vous assurer que vos clients reçoivent des fichiers à partir d’un nom de domaine approuvé et familier, et que TLS chiffre chaque connexion à Front Door. Lorsque Front Door gère vos certificats TLS, vous évitez les pannes et les problèmes de sécurité dus à des certificats TLS non valides ou obsolètes.

Stockage Azure prend également en charge les noms de domaine personnalisés, mais ne prend pas en charge HTTPS lors de l’utilisation d’un domaine personnalisé. Front Door est la meilleure approche pour utiliser un nom de domaine personnalisé avec un compte de stockage.

Pare-feu d’application web

La règle managée du pare-feu d’applications web Front Door définit les requêtes d’analyse des menaces de sécurité courantes et émergentes. Nous vous recommandons d’utiliser le pare-feu d’applications web et les règles managées pour les applications statiques et dynamiques.

Vous pouvez également utiliser le pare-feu d’applications web Front Door pour effectuer la limitation de débit et le filtrage géographique si vous avez besoin de ces fonctionnalités.

Résilience

Front Door est un service hautement disponible et, en raison de son architecture distribuée à l’échelle mondiale, il est résilient aux défaillances de régions Azure et de points de présence uniques.

En utilisant le cache Front Door, vous réduisez la charge sur votre compte de stockage. En outre, si votre compte de stockage n’est pas disponible, Front Door peut être en mesure de continuer à traiter les réponses mises en cache jusqu’à ce que votre application soit récupérée.

Vous pouvez encore améliorer la résilience de la solution globale en tenant compte de la résilience du compte de stockage. Pour plus d’informations, consultez Redondance de Stockage Azure. Vous pouvez également déployer plusieurs comptes de stockage et configurer plusieurs origines dans votre groupe d’origines Front Door, et configurer le basculement entre les origines en configurant la priorité de chaque origine. Pour plus d’informations, consultez Origines et groupes d’origines dans Azure Front Door.

Optimisation des coûts

La mise en cache peut aider à réduire le coût de la distribution de contenu statique. Les points de présence Front Door stockent des copies des réponses et peuvent distribuer ces réponses mises en cache pour toutes les requêtes ultérieures. La mise en cache réduit la charge des requêtes sur l’origine. Dans les solutions basées sur du contenu statique à grande échelle, en particulier celles qui fournissent des fichiers volumineux, la mise en cache peut réduire considérablement les coûts de trafic.

Pour utiliser Private Link dans cette solution, vous devez déployer le niveau Premium de Front Door. Vous pouvez utiliser le niveau standard si vous n’avez pas besoin de bloquer le trafic directement vers votre compte de stockage. Pour plus d’informations, consultez Sécurité de l’origine.

Déployer ce scénario

Pour déployer ce scénario à l’aide de modèles ARM Bicep ou JSON, consultez ce guide de démarrage rapide.

Pour déployer ce scénario à l’aide de Terraform, consultez ce guide de démarrage rapide.

Étapes suivantes

Découvrez comment créer un profil Front Door.