Share via


Microsoft.Network frontDoors

Définition de ressource Bicep

Le type de ressource frontDoors peut être déployé sur :

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/frontDoors, ajoutez le Bicep suivant à votre modèle.

resource symbolicname 'Microsoft.Network/frontDoors@2021-06-01' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  properties: {
    backendPools: [
      {
        id: 'string'
        name: 'string'
        properties: {
          backends: [
            {
              address: 'string'
              backendHostHeader: 'string'
              enabledState: 'string'
              httpPort: int
              httpsPort: int
              priority: int
              privateLinkAlias: 'string'
              privateLinkApprovalMessage: 'string'
              privateLinkLocation: 'string'
              privateLinkResourceId: 'string'
              weight: int
            }
          ]
          healthProbeSettings: {
            id: 'string'
          }
          loadBalancingSettings: {
            id: 'string'
          }
        }
      }
    ]
    backendPoolsSettings: {
      enforceCertificateNameCheck: 'string'
      sendRecvTimeoutSeconds: int
    }
    enabledState: 'string'
    friendlyName: 'string'
    frontendEndpoints: [
      {
        id: 'string'
        name: 'string'
        properties: {
          hostName: 'string'
          sessionAffinityEnabledState: 'string'
          sessionAffinityTtlSeconds: int
          webApplicationFirewallPolicyLink: {
            id: 'string'
          }
        }
      }
    ]
    healthProbeSettings: [
      {
        id: 'string'
        name: 'string'
        properties: {
          enabledState: 'string'
          healthProbeMethod: 'string'
          intervalInSeconds: int
          path: 'string'
          protocol: 'string'
        }
      }
    ]
    loadBalancingSettings: [
      {
        id: 'string'
        name: 'string'
        properties: {
          additionalLatencyMilliseconds: int
          sampleSize: int
          successfulSamplesRequired: int
        }
      }
    ]
    routingRules: [
      {
        id: 'string'
        name: 'string'
        properties: {
          acceptedProtocols: [
            'string'
          ]
          enabledState: 'string'
          frontendEndpoints: [
            {
              id: 'string'
            }
          ]
          patternsToMatch: [
            'string'
          ]
          routeConfiguration: {
            '@odata.type': 'string'
            // For remaining properties, see RouteConfiguration objects
          }
          rulesEngine: {
            id: 'string'
          }
          webApplicationFirewallPolicyLink: {
            id: 'string'
          }
        }
      }
    ]
  }
}

Objets RouteConfiguration

Définissez la propriété @odata.type pour spécifier le type d’objet.

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, utilisez :

  '@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
  backendPool: {
    id: 'string'
  }
  cacheConfiguration: {
    cacheDuration: 'string'
    dynamicCompression: 'string'
    queryParameters: 'string'
    queryParameterStripDirective: 'string'
  }
  customForwardingPath: 'string'
  forwardingProtocol: 'string'

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, utilisez :

  '@odata.type': '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration'
  customFragment: 'string'
  customHost: 'string'
  customPath: 'string'
  customQueryString: 'string'
  redirectProtocol: 'string'
  redirectType: 'string'

Valeurs de propriétés

frontDoors

Nom Description Valeur
name Nom de la ressource chaîne (obligatoire)

Limite de caractères : 5-64

Caractères valides :
Caractères alphanumériques et traits d’union.

Doit commencer et se terminer par un caractère alphanumérique.

Le nom de la ressource doit être unique dans Azure.
location Emplacement de la ressource. string
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
properties Propriétés du Load Balancer Front Door FrontDoorProperties

FrontDoorProperties

Nom Description Valeur
back-endPools Pools back-end disponibles pour les règles de routage. BackendPool[]
backendPoolsSettings Paramètres de tous les back-endsPools BackendPoolsSettings
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
friendlyName Un nom convivial pour la porte d’entrée string
frontendEndpoints Points de terminaison front-end disponibles pour les règles de routage. FrontendEndpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Paramètres d’équilibrage de charge associés à cette instance Front Door. LoadBalancingSettingsModel[]
routingRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

BackendPool

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du pool principal Front Door BackendPoolProperties

BackendPoolProperties

Nom Description Valeur
Backends Ensemble de back-ends pour ce pool Back-end[]
healthProbeSettings Paramètres de sonde d’intégrité L7 pour un pool principal Sous-ressource
loadBalancingSettings Paramètres d’équilibrage de charge pour un pool back-end Sous-ressource

Backend

Nom Description Valeur
address Emplacement du backend (adresse IP ou nom de domaine complet) string
backendHostHeader Valeur à utiliser comme en-tête d’hôte envoyé au backend. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. string
enabledState Indique si vous voulez activer l’utilisation de ce backend. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
httpPort Numéro du port TCP HTTP. Doit être compris entre 1 et 65535. int
httpsPort Numéro du port TCP HTTPS. Doit être compris entre 1 et 65535. int
priority Priorité à utiliser pour l’équilibrage de charge. Les priorités plus élevées ne seront pas utilisées pour l’équilibrage de charge si un back-end de priorité inférieure est sain. int
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter au Private Link string
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est renseigné string
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. int

Sous-ressource

Nom Description Valeur
id ID de la ressource string

BackendPoolsSettings

Nom Description Valeur
enforceCertificateNameCheck S’il faut appliquer le nom de certificat case activée sur les requêtes HTTPS à tous les pools back-ends. Aucun effet sur les requêtes non HTTPS. 'Désactivé'
'Enabled'
sendRecvTimeoutSeconds Envoyez et recevez un délai d’attente lors du transfert de la demande vers le back-end. Lorsque le délai d’expiration est atteint, la demande échoue et retourne. int

FrontendEndpoint

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Description Valeur
hostName Nom d’hôte du point de terminaison frontend (frontendEndpoint). Doit être un nom de domaine. string
sessionAffinityEnabledState Indique s’il faut, ou non, autoriser l’affinité de session sur cet hôte. Les options valides sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
sessionAffinityTtlSeconds INUTILISÉS. Ce champ sera ignoré. Durée de vie (TTL) à utiliser, en secondes, pour l’affinité de session, le cas échéant. int
webApplicationFirewallPolicyLink Définit la stratégie Web Application Firewall pour chaque hôte (le cas échéant) FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Nom Description Valeur
id ID de la ressource string

HealthProbeSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Description Valeur
enabledState Indique s’il faut activer les sondes d’intégrité sur les back-ends définis sous backendPools. Les sondes d’intégrité ne peuvent être désactivées que s’il existe un seul back-end activé dans un pool principal activé unique. 'Désactivé'
'Enabled'
healthProbeMethod Configure la méthode HTTP à utiliser pour sonder les back-ends définis sous backendPools. 'GET'
'HEAD'
intervalInSeconds Nombre de secondes entre les sondes d’intégrité. int
path Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / string
protocol Schéma de protocole à utiliser pour cette sonde 'Http'
'Https'

LoadBalancingSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nom Description Valeur
additionalLatencyMilliseconds Latence supplémentaire en millisecondes pour que les sondes tombent dans le compartiment de latence le plus faible int
sampleSize Nombre d’exemples à prendre en compte pour les décisions d’équilibrage de charge int
successfulSamplesRequiredred Nombre d’échantillons dans la période d’échantillonnage qui doivent réussir int

RoutingRule

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés de la règle de routage Front Door RoutingRuleProperties

RoutingRuleProperties

Nom Description Valeur
acceptedProtocols Schémas de protocole à mettre en correspondance pour cette règle Tableau de chaînes contenant l’un des éléments suivants :
'Http'
'Https'
enabledState Indique s’il faut activer l’utilisation de cette route. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
frontendEndpoints Points de terminaison front-end associés à cette règle SubResource[]
patternsToMatch Modèles d’itinéraire de la règle. string[]
routeConfiguration Référence à la configuration de routage. RouteConfiguration
rulesEngine Référence à une configuration spécifique du moteur de règles à appliquer à cet itinéraire. SubResource
webApplicationFirewallPolicyLink Définit la stratégie de Web Application Firewall pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nom Description Valeur
@odata.type Définir le type d’objet #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatoire)

ForwardingConfiguration

Nom Description Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatoire)
backendPool Référence au BackendPool vers lequel cette règle achemine. SubResource
cacheConfiguration Configuration de mise en cache associée à cette règle. CacheConfiguration
customForwardingPath Chemin d’accès personnalisé utilisé pour réécrire les chemins d’accès aux ressources correspondant à cette règle. Laissez cette option vide pour utiliser le chemin entrant. string
forwardingProtocol Protocole utilisé par cette règle pour transférer le trafic vers les back-ends. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Nom Description Valeur
cacheDuration Durée pendant laquelle le contenu doit être mis en cache. Le format autorisé est au format ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP nécessite que la valeur ne soit pas supérieure à un an string
dynamicCompression Indique s’il faut utiliser la compression dynamique pour le contenu mis en cache 'Désactivé'
'Enabled'
queryParameters paramètres de requête à inclure ou à exclure (séparés par des virgules). string
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Nom Description Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Fragment est la partie de l’URL qui se trouve après #. N’incluez pas le #. string
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. string
customPath Chemin d’accès complet à rediriger. Le chemin d’accès ne peut pas être vide et doit commencer par /. Laissez vide pour utiliser le chemin d’accès entrant comme chemin de destination. string
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplacerait toute chaîne de requête existante ; Laissez vide pour conserver la chaîne de requête entrante. La chaîne de requête doit être au format {key}={value}. Le premier ? et & seront ajoutés automatiquement, ne les incluez pas à l’avant, mais séparez plusieurs chaînes de requête avec &. string
redirectProtocol Protocole de la destination vers laquelle le trafic est redirigé 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType Type de redirection utilisé par la règle lors de la redirection du trafic. 'Trouvé'
'Déplacé'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nom Description Valeur
id ID de la ressource string

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Créer Azure Front Door devant Azure Gestion des API

Déployer sur Azure
Cet exemple montre comment utiliser Azure Front Door comme équilibreur de charge global devant Azure Gestion des API.
Créer une porte d’entrée de base

Déployer sur Azure
Ce modèle crée une configuration Front Door de base avec un seul back-end.
Créer une porte d’entrée avec la mise en cache activée pour certaines routes

Déployer sur Azure
Ce modèle crée une porte d’entrée avec la mise en cache activée pour la configuration de routage définie, mettant ainsi en cache toutes les ressources statiques pour votre charge de travail.
Créer une porte d’entrée avec plusieurs back-ends et pools de back-ends

Déployer sur Azure
Ce modèle crée une porte d’entrée avec l’équilibrage de charge configuré pour plusieurs back-ends dans un pool de back-ends, ainsi que sur les pools de back-ends en fonction du chemin d’URL.
Créer une porte d’entrée avec la redirection HTTP vers HTTPS

Déployer sur Azure
Ce modèle crée une configuration Front Door pour la redirection HTTP vers HTTPS.
Ajouter un domaine personnalisé et un certificat managé avec Front Door

Déployer sur Azure
Ce modèle intègre et sécurise un domaine personnalisé avec Front Door
Ajouter un domaine personnalisé et un certificat personnalisé avec Front Door

Déployer sur Azure
Ce modèle intègre et sécurise un domaine personnalisé avec Front Door avec un certificat géré par le client
Contrôler les sondes d’intégrité pour vos backends sur Front Door

Déployer sur Azure
Ce modèle met à jour votre porte d’entrée pour modifier les paramètres de la sonde d’intégrité en définissant le chemin de la sonde, ainsi que les intervalles d’envoi des sondes.
Créer Front Door avec Active-Standby configuration

Déployer sur Azure
Ce modèle crée une porte d’entrée qui illustre le routage basé sur les priorités pour Active-Standby topologie d’application.
Configurer l’affinité de session pour les noms d’hôte de votre porte d’entrée

Déployer sur Azure
Ce modèle met à jour une porte d’entrée pour activer l’affinité de session pour votre hôte frontal, en envoyant ainsi le trafic suivant à partir de la même session utilisateur vers le même back-end.

Définition de ressources de modèle ARM

Le type de ressource frontDoors peut être déployé sur :

Pour obtenir la liste des propriétés modifiées dans chaque version d’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/frontDoors, ajoutez le json suivant à votre modèle.

{
  "type": "Microsoft.Network/frontDoors",
  "apiVersion": "2021-06-01",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "backendPools": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "backends": [
            {
              "address": "string",
              "backendHostHeader": "string",
              "enabledState": "string",
              "httpPort": "int",
              "httpsPort": "int",
              "priority": "int",
              "privateLinkAlias": "string",
              "privateLinkApprovalMessage": "string",
              "privateLinkLocation": "string",
              "privateLinkResourceId": "string",
              "weight": "int"
            }
          ],
          "healthProbeSettings": {
            "id": "string"
          },
          "loadBalancingSettings": {
            "id": "string"
          }
        }
      }
    ],
    "backendPoolsSettings": {
      "enforceCertificateNameCheck": "string",
      "sendRecvTimeoutSeconds": "int"
    },
    "enabledState": "string",
    "friendlyName": "string",
    "frontendEndpoints": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "hostName": "string",
          "sessionAffinityEnabledState": "string",
          "sessionAffinityTtlSeconds": "int",
          "webApplicationFirewallPolicyLink": {
            "id": "string"
          }
        }
      }
    ],
    "healthProbeSettings": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "enabledState": "string",
          "healthProbeMethod": "string",
          "intervalInSeconds": "int",
          "path": "string",
          "protocol": "string"
        }
      }
    ],
    "loadBalancingSettings": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "additionalLatencyMilliseconds": "int",
          "sampleSize": "int",
          "successfulSamplesRequired": "int"
        }
      }
    ],
    "routingRules": [
      {
        "id": "string",
        "name": "string",
        "properties": {
          "acceptedProtocols": [ "string" ],
          "enabledState": "string",
          "frontendEndpoints": [
            {
              "id": "string"
            }
          ],
          "patternsToMatch": [ "string" ],
          "routeConfiguration": {
            "@odata.type": "string"
            // For remaining properties, see RouteConfiguration objects
          },
          "rulesEngine": {
            "id": "string"
          },
          "webApplicationFirewallPolicyLink": {
            "id": "string"
          }
        }
      }
    ]
  }
}

Objets RouteConfiguration

Définissez la propriété @odata.type pour spécifier le type d’objet.

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, utilisez :

  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
  "backendPool": {
    "id": "string"
  },
  "cacheConfiguration": {
    "cacheDuration": "string",
    "dynamicCompression": "string",
    "queryParameters": "string",
    "queryParameterStripDirective": "string"
  },
  "customForwardingPath": "string",
  "forwardingProtocol": "string"

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, utilisez :

  "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration",
  "customFragment": "string",
  "customHost": "string",
  "customPath": "string",
  "customQueryString": "string",
  "redirectProtocol": "string",
  "redirectType": "string"

Valeurs de propriétés

frontDoors

Nom Description Valeur
type Type de ressource 'Microsoft.Network/frontDoors'
apiVersion Version de l’API de ressource '2021-06-01'
name Nom de la ressource string (obligatoire)

Limite de caractères : 5-64

Caractères valides :
Caractères alphanumériques et traits d’union.

Doit commencer et se terminer par un caractère alphanumérique.

Le nom de la ressource doit être unique dans Azure.
location Emplacement de la ressource. string
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes. Voir Balises dans les modèles
properties Propriétés du Load Balancer Front Door FrontDoorProperties

FrontDoorProperties

Nom Description Valeur
backendPools Pools principaux disponibles pour les règles de routage. BackendPool[]
backendPoolsSettings Paramètres de tous les backendPools BackendPoolsSettings
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
friendlyName Un nom convivial pour la porte d’entrée string
frontendEndpoints Points de terminaison front-end disponibles pour les règles de routage. FrontendEndpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Paramètres d’équilibrage de charge associés à cette instance Front Door. LoadBalancingSettingsModel[]
routingRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

BackendPool

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du pool principal Front Door BackendPoolProperties

BackendPoolProperties

Nom Description Valeur
Backends Ensemble de back-ends pour ce pool Back-end[]
healthProbeSettings Paramètres de sonde d’intégrité L7 pour un pool principal Sous-ressource
loadBalancingSettings Paramètres d’équilibrage de charge pour un pool back-end Sous-ressource

Backend

Nom Description Valeur
address Emplacement du backend (adresse IP ou nom de domaine complet) string
backendHostHeader Valeur à utiliser comme en-tête d’hôte envoyé au backend. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. string
enabledState Indique si vous voulez activer l’utilisation de ce backend. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
httpPort Numéro du port TCP HTTP. Doit être compris entre 1 et 65535. int
httpsPort Numéro du port TCP HTTPS. Doit être compris entre 1 et 65535. int
priority Priorité à utiliser pour l’équilibrage de charge. Les priorités plus élevées ne seront pas utilisées pour l’équilibrage de charge si un back-end de priorité inférieure est sain. int
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter au Private Link string
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est renseigné string
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. int

Sous-ressource

Nom Description Valeur
id ID de la ressource string

BackendPoolsSettings

Nom Description Valeur
enforceCertificateNameCheck S’il faut appliquer le nom de certificat case activée sur les requêtes HTTPS à tous les pools back-ends. Aucun effet sur les requêtes non HTTPS. 'Désactivé'
'Enabled'
sendRecvTimeoutSeconds Envoyez et recevez un délai d’attente lors du transfert de la demande vers le back-end. Lorsque le délai d’expiration est atteint, la demande échoue et retourne. int

FrontendEndpoint

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Description Valeur
hostName Nom d’hôte du point de terminaison frontend (frontendEndpoint). Doit être un nom de domaine. string
sessionAffinityEnabledState Indique s’il faut, ou non, autoriser l’affinité de session sur cet hôte. Les options valides sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
sessionAffinityTtlSeconds INUTILISÉS. Ce champ sera ignoré. Durée de vie (TTL) à utiliser, en secondes, pour l’affinité de session, le cas échéant. int
webApplicationFirewallPolicyLink Définit la stratégie Web Application Firewall pour chaque hôte (le cas échéant) FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Nom Description Valeur
id ID de la ressource string

HealthProbeSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Description Valeur
enabledState Indique s’il faut activer les sondes d’intégrité sur les back-ends définis sous backendPools. Les sondes d’intégrité ne peuvent être désactivées que s’il existe un seul back-end activé dans un pool principal activé unique. 'Désactivé'
'Enabled'
healthProbeMethod Configure la méthode HTTP à utiliser pour sonder les back-ends définis sous backendPools. 'GET'
'HEAD'
intervalInSeconds Nombre de secondes entre les sondes d’intégrité. int
path Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / string
protocol Schéma de protocole à utiliser pour cette sonde 'Http'
'Https'

LoadBalancingSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nom Description Valeur
additionalLatencyMilliseconds Latence supplémentaire en millisecondes pour que les sondes tombent dans le compartiment de latence le plus faible int
sampleSize Nombre d’exemples à prendre en compte pour les décisions d’équilibrage de charge int
successfulSamplesRequiredred Nombre d’échantillons dans la période d’échantillonnage qui doivent réussir int

RoutingRule

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés de la règle de routage Front Door RoutingRuleProperties

RoutingRuleProperties

Nom Description Valeur
acceptedProtocols Schémas de protocole à mettre en correspondance pour cette règle Tableau de chaînes contenant l’un des éléments suivants :
'Http'
'Https'
enabledState Indique s’il faut activer l’utilisation de cette route. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Enabled'
frontendEndpoints Points de terminaison front-end associés à cette règle Sous-ressource[]
patternsToMatch Modèles d’itinéraire de la règle. string[]
routeConfiguration Référence à la configuration de routage. RouteConfiguration
rulesEngine Référence à une configuration spécifique du moteur de règles à appliquer à cet itinéraire. Sous-ressource
webApplicationFirewallPolicyLink Définit la stratégie de Web Application Firewall pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nom Description Valeur
@odata.type Définir le type d’objet #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatoire)

TransfertConfiguration

Nom Description Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatoire)
backendPool Référence au BackendPool vers lequel cette règle est acheminée. Sous-ressource
cacheConfiguration Configuration de mise en cache associée à cette règle. CacheConfiguration
customForwardingPath Chemin d’accès personnalisé utilisé pour réécrire les chemins de ressources correspondant à cette règle. Laissez cette option vide pour utiliser le chemin entrant. string
forwardingProtocol Protocole utilisé par cette règle pour transférer le trafic vers les back-ends. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Nom Description Valeur
cacheDuration Durée pendant laquelle le contenu doit être mis en cache. Le format autorisé est au format ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP nécessite que la valeur ne soit pas supérieure à un an string
dynamicCompression S’il faut utiliser la compression dynamique pour le contenu mis en cache 'Désactivé'
'Enabled'
queryParameters paramètres de requête à inclure ou à exclure (séparés par des virgules). string
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Nom Description Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Fragment est la partie de l’URL qui vient après #. N’incluez pas le #. string
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. string
customPath Chemin d’accès complet à rediriger. Le chemin d’accès ne peut pas être vide et doit commencer par /. Laissez vide pour utiliser le chemin entrant comme chemin de destination. string
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplacerait toute chaîne de requête existante ; laissez vide pour conserver la chaîne de requête entrante. La chaîne de requête doit être au format {key}={value}. La première ? et & seront ajoutés automatiquement, donc ne les incluez pas au front, mais séparez plusieurs chaînes de requête avec &. string
redirectProtocol Protocole de la destination vers laquelle le trafic est redirigé 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType Type de redirection que la règle utilisera lors de la redirection du trafic. 'Trouvé'
'Déplacé'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nom Description Valeur
id ID de la ressource string

Modèles de démarrage rapide

Les modèles de démarrage rapide suivants déploient ce type de ressource.

Modèle Description
Créer Azure Front Door devant Azure Gestion des API

Déployer sur Azure
Cet exemple montre comment utiliser Azure Front Door comme équilibreur de charge global devant Azure Gestion des API.
Créer une porte d’entrée de base

Déployer sur Azure
Ce modèle crée une configuration Front Door de base avec un seul back-end.
Créer une porte d’entrée avec la mise en cache activée pour certaines routes

Déployer sur Azure
Ce modèle crée une porte d’entrée avec la mise en cache activée pour la configuration de routage définie, mettant ainsi en cache toutes les ressources statiques pour votre charge de travail.
Créer une porte d’entrée avec plusieurs back-ends et pools de back-ends

Déployer sur Azure
Ce modèle crée une porte d’entrée avec l’équilibrage de charge configuré pour plusieurs back-ends dans un pool back-end et également entre les pools principaux en fonction du chemin d’URL.
Créer une porte d’entrée avec la redirection HTTP vers HTTPS

Déployer sur Azure
Ce modèle crée une configuration Front Door pour la redirection HTTP vers HTTPS.
Ajouter un domaine personnalisé et un certificat managé avec Front Door

Déployer sur Azure
Ce modèle intègre et sécurise un domaine personnalisé avec Front Door
Ajouter un domaine personnalisé et un certificat personnalisé avec Front Door

Déployer sur Azure
Ce modèle intègre et sécurise un domaine personnalisé avec Front Door avec un certificat géré par le client
Contrôler les sondes d’intégrité pour vos backends sur Front Door

Déployer sur Azure
Ce modèle met à jour votre Front Door pour modifier les paramètres de la sonde d’intégrité en définissant le chemin d’accès de la sonde ainsi que les intervalles d’envoi des sondes.
Créer Front Door avec Active-Standby config

Déployer sur Azure
Ce modèle crée une porte d’entrée qui illustre le routage basé sur la priorité pour Active-Standby topologie d’application.
Configurer l’affinité de session pour les noms d’hôte de votre porte d’entrée

Déployer sur Azure
Ce modèle met à jour une porte d’entrée pour activer l’affinité de session pour votre hôte frontal, en envoyant ainsi le trafic suivant de la même session utilisateur vers le même back-end.

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource frontDoors peut être déployé sur :

  • Groupes de ressources

Pour obtenir la liste des propriétés modifiées dans chaque version de l’API, consultez journal des modifications.

Format des ressources

Pour créer une ressource Microsoft.Network/frontDoors, ajoutez le Terraform suivant à votre modèle.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/frontDoors@2021-06-01"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      backendPools = [
        {
          id = "string"
          name = "string"
          properties = {
            backends = [
              {
                address = "string"
                backendHostHeader = "string"
                enabledState = "string"
                httpPort = int
                httpsPort = int
                priority = int
                privateLinkAlias = "string"
                privateLinkApprovalMessage = "string"
                privateLinkLocation = "string"
                privateLinkResourceId = "string"
                weight = int
              }
            ]
            healthProbeSettings = {
              id = "string"
            }
            loadBalancingSettings = {
              id = "string"
            }
          }
        }
      ]
      backendPoolsSettings = {
        enforceCertificateNameCheck = "string"
        sendRecvTimeoutSeconds = int
      }
      enabledState = "string"
      friendlyName = "string"
      frontendEndpoints = [
        {
          id = "string"
          name = "string"
          properties = {
            hostName = "string"
            sessionAffinityEnabledState = "string"
            sessionAffinityTtlSeconds = int
            webApplicationFirewallPolicyLink = {
              id = "string"
            }
          }
        }
      ]
      healthProbeSettings = [
        {
          id = "string"
          name = "string"
          properties = {
            enabledState = "string"
            healthProbeMethod = "string"
            intervalInSeconds = int
            path = "string"
            protocol = "string"
          }
        }
      ]
      loadBalancingSettings = [
        {
          id = "string"
          name = "string"
          properties = {
            additionalLatencyMilliseconds = int
            sampleSize = int
            successfulSamplesRequired = int
          }
        }
      ]
      routingRules = [
        {
          id = "string"
          name = "string"
          properties = {
            acceptedProtocols = [
              "string"
            ]
            enabledState = "string"
            frontendEndpoints = [
              {
                id = "string"
              }
            ]
            patternsToMatch = [
              "string"
            ]
            routeConfiguration = {
              @odata.type = "string"
              // For remaining properties, see RouteConfiguration objects
            }
            rulesEngine = {
              id = "string"
            }
            webApplicationFirewallPolicyLink = {
              id = "string"
            }
          }
        }
      ]
    }
  })
}

Objets RouteConfiguration

Définissez la propriété @odata.type pour spécifier le type d’objet.

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, utilisez :

  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration"
  backendPool = {
    id = "string"
  }
  cacheConfiguration = {
    cacheDuration = "string"
    dynamicCompression = "string"
    queryParameters = "string"
    queryParameterStripDirective = "string"
  }
  customForwardingPath = "string"
  forwardingProtocol = "string"

Pour #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, utilisez :

  @odata.type = "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration"
  customFragment = "string"
  customHost = "string"
  customPath = "string"
  customQueryString = "string"
  redirectProtocol = "string"
  redirectType = "string"

Valeurs de propriétés

frontDoors

Nom Description Valeur
type Type de ressource « Microsoft.Network/frontDoors@2021-06-01 »
name Nom de la ressource chaîne (obligatoire)

Limite de caractères : 5-64

Caractères valides :
Caractères alphanumériques et traits d’union.

Doit commencer et se terminer par un caractère alphanumérique.

Le nom de la ressource doit être unique dans Azure.
location Emplacement de la ressource. string
parent_id Pour effectuer un déploiement dans un groupe de ressources, utilisez l’ID de ce groupe de ressources. string (obligatoire)
tags Balises de ressource. Dictionnaire de noms et de valeurs d’étiquettes.
properties Propriétés du Load Balancer Front Door FrontDoorProperties

FrontDoorProperties

Nom Description Valeur
backendPools Pools principaux disponibles pour les règles de routage. BackendPool[]
backendPoolsSettings Paramètres de tous les backendPools BackendPoolsSettings
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » « Désactivé »
« Activé »
friendlyName Un nom convivial pour la porte d’entrée string
frontendEndpoints Points de terminaison front-end disponibles pour les règles de routage. FrontendEndpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Paramètres d’équilibrage de charge associés à cette instance Front Door. LoadBalancingSettingsModel[]
routingRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

BackendPool

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du pool de back-ends Front Door BackendPoolProperties

BackendPoolProperties

Nom Description Valeur
Backends Ensemble de back-ends pour ce pool Back-end[]
healthProbeSettings Paramètres de sonde d’intégrité L7 pour un pool principal SubResource
loadBalancingSettings Paramètres d’équilibrage de charge pour un pool principal SubResource

Backend

Nom Description Valeur
address Emplacement du backend (adresse IP ou nom de domaine complet) string
backendHostHeader Valeur à utiliser comme en-tête d’hôte envoyé au backend. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. string
enabledState Indique si vous voulez activer l’utilisation de ce backend. Les valeurs autorisées sont « Enabled » ou « Disabled » « Désactivé »
« Activé »
httpPort Numéro du port TCP HTTP. Doit être compris entre 1 et 65535. int
httpsPort Numéro du port TCP HTTPS. Doit être compris entre 1 et 65535. int
priority Priorité à utiliser pour l’équilibrage de charge. Les priorités plus élevées ne seront pas utilisées pour l’équilibrage de charge si un serveur principal de priorité inférieure est sain. int
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter au Private Link string
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est renseigné string
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » string
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. int

Sous-ressource

Nom Description Valeur
id ID de la ressource string

BackendPoolsSettings

Nom Description Valeur
enforceCertificateNameCheck S’il faut appliquer le nom de certificat case activée sur les requêtes HTTPS à tous les pools back-ends. Aucun effet sur les requêtes non HTTPS. « Désactivé »
« Activé »
sendRecvTimeoutSeconds Envoyez et recevez un délai d’attente lors du transfert de la demande vers le back-end. Lorsque le délai d’expiration est atteint, la demande échoue et retourne. int

FrontendEndpoint

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Description Valeur
hostName Nom d’hôte du point de terminaison frontend (frontendEndpoint). Doit être un nom de domaine. string
sessionAffinityEnabledState Indique s’il faut, ou non, autoriser l’affinité de session sur cet hôte. Les options valides sont « Enabled » ou « Disabled » « Désactivé »
« Activé »
sessionAffinityTtlSeconds INUTILISÉS. Ce champ sera ignoré. Durée de vie (TTL) à utiliser, en secondes, pour l’affinité de session, le cas échéant. int
webApplicationFirewallPolicyLink Définit la stratégie Web Application Firewall pour chaque hôte (le cas échéant) FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Nom Description Valeur
id ID de la ressource string

HealthProbeSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Description Valeur
enabledState Indique s’il faut activer les sondes d’intégrité sur les back-ends définis sous backendPools. Les sondes d’intégrité ne peuvent être désactivées que s’il existe un seul back-end activé dans un pool principal activé unique. « Désactivé »
« Activé »
healthProbeMethod Configure la méthode HTTP à utiliser pour sonder les back-ends définis sous backendPools. « OBTERNIR »
« HEAD »
intervalInSeconds Nombre de secondes entre les sondes d’intégrité. int
path Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / string
protocol Schéma de protocole à utiliser pour cette sonde « Http »
« Https »

LoadBalancingSettingsModel

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nom Description Valeur
additionalLatencyMilliseconds Latence supplémentaire en millisecondes pour que les sondes tombent dans le compartiment de latence le plus faible int
sampleSize Nombre d’échantillons à prendre en compte pour les décisions d’équilibrage de charge int
successfulSamplesRequired Nombre d’échantillons dans la période d’échantillonnage qui doivent réussir int

RoutingRule

Nom Description Valeur
id ID de la ressource string
name Nom de la ressource. string
properties Propriétés de la règle de routage front door RoutingRuleProperties

RoutingRuleProperties

Nom Description Valeur
acceptedProtocols Schémas de protocole à mettre en correspondance pour cette règle Tableau de chaînes contenant l’un des éléments suivants :
« Http »
« Https »
enabledState Indique s’il faut activer l’utilisation de cette route. Les valeurs autorisées sont « Enabled » ou « Disabled » « Désactivé »
« Activé »
frontendEndpoints Points de terminaison front-end associés à cette règle SubResource[]
patternsToMatch Modèles d’itinéraire de la règle. string[]
routeConfiguration Référence à la configuration de routage. RouteConfiguration
rulesEngine Référence à une configuration spécifique du moteur de règles à appliquer à cet itinéraire. SubResource
webApplicationFirewallPolicyLink Définit la stratégie de Web Application Firewall pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nom Description Valeur
@odata.type Définir le type d’objet #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obligatoire)

ForwardingConfiguration

Nom Description Valeur
@odata.type « #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration » (obligatoire)
backendPool Référence au BackendPool vers lequel cette règle achemine. SubResource
cacheConfiguration Configuration de mise en cache associée à cette règle. CacheConfiguration
customForwardingPath Chemin d’accès personnalisé utilisé pour réécrire les chemins d’accès aux ressources correspondant à cette règle. Laissez cette option vide pour utiliser le chemin entrant. string
forwardingProtocol Protocole utilisé par cette règle pour transférer le trafic vers les back-ends. « HttpOnly »
« HttpsOnly »
« MatchRequest »

CacheConfiguration

Nom Description Valeur
cacheDuration Durée pendant laquelle le contenu doit être mis en cache. Le format autorisé est au format ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP nécessite que la valeur ne soit pas supérieure à un an string
dynamicCompression Indique s’il faut utiliser la compression dynamique pour le contenu mis en cache « Désactivé »
« Activé »
queryParameters paramètres de requête à inclure ou à exclure (séparés par des virgules). string
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. « StripAll »
« StripAllExcept »
« StripNone »
« StripOnly »

RedirectConfiguration

Nom Description Valeur
@odata.type « #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration » (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Fragment est la partie de l’URL qui se trouve après #. N’incluez pas le #. string
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. string
customPath Chemin d’accès complet à rediriger. Le chemin d’accès ne peut pas être vide et doit commencer par /. Laissez vide pour utiliser le chemin d’accès entrant comme chemin de destination. string
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplacerait toute chaîne de requête existante ; Laissez vide pour conserver la chaîne de requête entrante. La chaîne de requête doit être au format {key}={value}. Le premier ? et & seront ajoutés automatiquement, ne les incluez pas à l’avant, mais séparez plusieurs chaînes de requête avec &. string
redirectProtocol Protocole de la destination vers laquelle le trafic est redirigé « HttpOnly »
« HttpsOnly »
« MatchRequest »
redirectType Type de redirection utilisé par la règle lors de la redirection du trafic. « Trouvé »
« Déplacé »
« PermanentRedirect »
« TemporaryRedirect »

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nom Description Valeur
id ID de la ressource string