Introduction
Azure Front Door est un service de gestion du trafic global qui combine load balancing, accélération et sécurité. En 2026, les entreprises exigent des architectures résilientes face aux pannes régionales. Ce tutoriel vous guide pas à pas dans une configuration avancée incluant règles de routage dynamiques, politiques WAF et intégration Terraform. Vous obtiendrez un système capable de gérer des millions de requêtes avec latence minimale.
Prérequis
- Compte Azure avec droits Contributor
- Terraform 1.7+
- Azure CLI installé et authentifié
- Connaissances solides en networking et sécurité
Initialisation du provider Terraform
terraform {
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "~> 4.0"
}
}
}
provider "azurerm" {
features {}
}Ce fichier configure le provider Azure officiel. Utilisez toujours une version verrouillée pour garantir la reproductibilité des déploiements en production.
Création du profil Front Door
resource "azurerm_cdn_frontdoor_profile" "main" {
name = "fd-advanced-prod"
resource_group_name = azurerm_resource_group.main.name
sku_name = "Premium_AzureFrontDoor"
tags = {
Environment = "Production"
Year = "2026"
}
}Le SKU Premium active les fonctionnalités avancées comme le WAF managé et les règles de routage complexes. Ce profil sert de conteneur logique pour tous les endpoints.
Configuration des endpoints et backends
resource "azurerm_cdn_frontdoor_endpoint" "main" {
name = "fd-endpoint-prod"
cdn_frontdoor_profile_id = azurerm_cdn_frontdoor_profile.main.id
}
resource "azurerm_cdn_frontdoor_origin_group" "backend" {
name = "origin-group-main"
cdn_frontdoor_profile_id = azurerm_cdn_frontdoor_profile.main.id
load_balancing {
sample_size = 4
successful_samples_required = 3
}
}L'origin group définit la logique de load balancing et de health probes. Ajustez sample_size pour un équilibrage plus fin en environnement haute charge.
Règles de routage avancées
resource "azurerm_cdn_frontdoor_route" "api" {
name = "route-api-v2"
cdn_frontdoor_endpoint_id = azurerm_cdn_frontdoor_endpoint.main.id
cdn_frontdoor_origin_group_id = azurerm_cdn_frontdoor_origin_group.backend.id
supported_protocols = ["Https"]
patterns_to_match = ["/api/v2/*"]
forwarding_protocol = "HttpsOnly"
https_redirect_enabled = true
}Cette route dirige le trafic API vers le bon backend avec redirection HTTPS forcée. Les patterns_to_match permettent un routage très granulaire.
Politique WAF managée
resource "azurerm_cdn_frontdoor_firewall_policy" "main" {
name = "waf-policy-prod"
resource_group_name = azurerm_resource_group.main.name
sku_name = "Premium_AzureFrontDoor"
managed_rule_set {
type = "Microsoft_DefaultRuleSet"
version = "2.1"
}
}La règle Microsoft_DefaultRuleSet 2.1 protège contre les attaques OWASP courantes. Activez-la toujours en mode Prevention pour la production.
Bonnes pratiques
- Verrouillez toujours les versions Terraform et SKU
- Activez les health probes avec un intervalle de 30 secondes
- Utilisez des managed identities pour l'authentification
- Testez les règles de routage avec le mode simulation avant activation
- Surveillez les métriques via Azure Monitor et Log Analytics
Erreurs courantes à éviter
- Oublier d'activer HTTPS redirect sur les routes
- Configurer des health probes trop agressifs qui déclenchent des faux positifs
- Ignorer les limites de règles WAF personnalisées
- Ne pas versionner les fichiers Terraform
Pour aller plus loin
Approfondissez vos compétences avec nos formations Azure avancées.