Partager via


Microsoft.NetworkfrontDoors

Définition de ressource Bicep

Le type de ressource frontDoors peut être déployé avec des opérations qui ciblent :

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

Format de ressource

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

resource symbolicname 'Microsoft.Network/frontDoors@2021-06-01' = {
  location: 'string'
  name: 'string'
  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'
          }
        }
      }
    ]
  }
  tags: {
    {customized property}: '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 la propriété

Microsoft.Network/frontDoors

Nom Descriptif Valeur
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur minimale = 5
Longueur maximale = 64
Modèle = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatoire)
Propriétés Propriétés de l’équilibreur de charge Front Door FrontDoorProperties
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles

Back-end

Nom Descriptif Valeur
adresse Emplacement du serveur principal (adresse IP ou nom de domaine complet) corde
backendHostHeader Valeur à utiliser comme en-tête de l’hôte envoyé au back-end. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. corde
enabledState Indique s’il faut activer l’utilisation de ce back-end. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
httpPort Numéro de port TCP HTTP. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
httpsPort (en anglais) Numéro de port TCP HTTPS. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
priorité 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

Contraintes:
Valeur minimale = 1
Valeur maximale = 5
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter à private Link corde
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est rempli corde
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 1 000

BackendPool

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du pool principal Front Door BackendPoolProperties

BackendPoolProperties

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

BackendPoolsParamètres

Nom Descriptif Valeur
enforceCertificateNameCheck Indique s’il faut appliquer la vérification du nom de certificat sur les requêtes HTTPS à tous les pools principaux. Aucun effet sur les requêtes non HTTPS. 'Désactivé'
'Activé'
sendRecvTimeoutSeconds Envoyer et recevoir le délai d’expiration lors du transfert de la demande vers le serveur principal. Lorsque le délai d’expiration est atteint, la requête échoue et retourne. Int

Contraintes:
Valeur minimale = 16

CacheConfiguration

Nom Descriptif 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 exige que la valeur ne soit pas supérieure à un an corde
dynamiqueCompression 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 (virgule séparée). corde
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectionConfiguration

Nom Descriptif 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 mis en correspondance par cette règle. Laissez vide pour utiliser le chemin entrant. corde
transfertprotocole Protocole que cette règle utilisera lors du transfert du trafic vers des back-ends. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

FrontDoorProperties

Nom Descriptif Valeur
backendPools Pools principaux disponibles pour les règles de routage. BackendPool[]
backendPoolsParamètres Paramètres de tous les backendPools BackendPoolsParamètres
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
nom convivial Un nom convivial pour le frontDoor corde
frontendEndpoints de terminaison Points de terminaison frontaux disponibles pour les règles de routage. frontendpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingParamètres Paramètres d’équilibrage de charge associés à cette instance Front Door. Équilibrage de ChargeParamètresModèle[]
routageRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

FrontendPoint de terminaison

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Descriptif Valeur
nom_hôte Nom d’hôte du frontendEndpoint. Doit être un nom de domaine. corde
sessionAffinityEnabledState Indique s’il faut autoriser l’affinité de session sur cet hôte. Les options valides sont « Activé » ou « Désactivé » 'Désactivé'
'Activé'
sessionAffinityTtlSeconds INUTILISÉ. Ce champ est ignoré. Durée de vie à utiliser en secondes pour l’affinité de session, le cas échéant. Int
webApplicationFirewallPolicyLink Définit la stratégie de pare-feu d’applications web pour chaque hôte (le cas échéant) FrontendendpointUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

HealthProbeSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Descriptif 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. 'OBTENIR'
'TÊTE'
intervalleEnSecondes Nombre de secondes entre les sondes d’intégrité. Int
chemin Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / corde
protocole Schéma de protocole à utiliser pour cette sonde 'Http'
'Https'

LoadBalancingSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

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

RedirectionConfiguration

Nom Descriptif Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Le fragment fait partie de l’URL qui vient après #. N’incluez pas le #. corde
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. corde
customPath Chemin 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. corde
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplace 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 <clé>=<valeur> format. La première ? et & seront ajoutés automatiquement afin de ne pas les inclure dans le front, mais de séparer plusieurs chaînes de requête avec &. corde
redirectionProtocole 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é'
'Redirection permanente'
'Redirection temporaire'

ResourceTags

Nom Descriptif Valeur

Configuration de l’itinéraire

Nom Descriptif Valeur
@odata.type Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration » pour le type ForwardingConfiguration. Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration » pour le type RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)

Règle de routage

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés de la règle de routage Front Door RoutingRuleProperties

RoutingRuleProperties

Nom Descriptif Valeur
acceptedProtocoles 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 règle. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
frontendEndpoints de terminaison Points de terminaison frontaux associés à cette règle Sous-Ressource[]
motifsToMatch Modèles d’itinéraire de la règle. chaîne de caractères[]
routeConfiguration Référence à la configuration du routage. Configuration de l’itinéraire
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 pare-feu d’applications web pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

Sous-ressource

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

Exemples d’utilisation

Modules vérifiés Azure

Les modules vérifiés Azure suivants peuvent être utilisés pour déployer ce type de ressource.

Module Descriptif
Porte d’entrée azur Module de ressources AVM pour Azure Front Door

Exemples de démarrage rapide Azure

Les modèles de démarrage rapide Azure suivants contiennent des exemples Bicep pour le déploiement de ce type de ressource.

Fichier Bicep Descriptif
Ajouter un domaine personnalisé et un certificat personnalisé avec front Door Ce modèle intègre et sécurise un domaine personnalisé avec Front Door avec un certificat géré par le client
Ajouter un domaine personnalisé et un certificat managé avec Front Door Ce modèle intègre et sécurise un domaine personnalisé avec Front Door
Contrôler les sondes d’intégrité de vos back-ends sur front door 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 dans lesquels les sondes seront envoyées.
Créer un Front Door de base Ce modèle crée une configuration Front Door de base avec un seul back-end.
Créer une porte d’entrée avec une redirection HTTP vers HTTPS Ce modèle crée une configuration Front Door pour la redirection HTTP vers HTTPS.

Définition de ressource de modèle ARM

Le type de ressource frontDoors peut être déployé avec des opérations qui ciblent :

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

Format de ressource

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

{
  "type": "Microsoft.Network/frontDoors",
  "apiVersion": "2021-06-01",
  "name": "string",
  "location": "string",
  "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"
          }
        }
      }
    ]
  },
  "tags": {
    "{customized property}": "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 la propriété

Microsoft.Network/frontDoors

Nom Descriptif Valeur
apiVersion Version de l’API '2021-06-01'
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur minimale = 5
Longueur maximale = 64
Modèle = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatoire)
Propriétés Propriétés de l’équilibreur de charge Front Door FrontDoorProperties
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes. Consultez les balises dans les modèles
type Type de ressource « Microsoft.Network/frontDoors »

Back-end

Nom Descriptif Valeur
adresse Emplacement du serveur principal (adresse IP ou nom de domaine complet) corde
backendHostHeader Valeur à utiliser comme en-tête de l’hôte envoyé au back-end. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. corde
enabledState Indique s’il faut activer l’utilisation de ce back-end. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
httpPort Numéro de port TCP HTTP. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
httpsPort (en anglais) Numéro de port TCP HTTPS. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
priorité 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

Contraintes:
Valeur minimale = 1
Valeur maximale = 5
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter à private Link corde
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est rempli corde
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 1 000

BackendPool

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du pool principal Front Door BackendPoolProperties

BackendPoolProperties

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

BackendPoolsParamètres

Nom Descriptif Valeur
enforceCertificateNameCheck Indique s’il faut appliquer la vérification du nom de certificat sur les requêtes HTTPS à tous les pools principaux. Aucun effet sur les requêtes non HTTPS. 'Désactivé'
'Activé'
sendRecvTimeoutSeconds Envoyer et recevoir le délai d’expiration lors du transfert de la demande vers le serveur principal. Lorsque le délai d’expiration est atteint, la requête échoue et retourne. Int

Contraintes:
Valeur minimale = 16

CacheConfiguration

Nom Descriptif 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 exige que la valeur ne soit pas supérieure à un an corde
dynamiqueCompression 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 (virgule séparée). corde
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectionConfiguration

Nom Descriptif 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 mis en correspondance par cette règle. Laissez vide pour utiliser le chemin entrant. corde
transfertprotocole Protocole que cette règle utilisera lors du transfert du trafic vers des back-ends. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

FrontDoorProperties

Nom Descriptif Valeur
backendPools Pools principaux disponibles pour les règles de routage. BackendPool[]
backendPoolsParamètres Paramètres de tous les backendPools BackendPoolsParamètres
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
nom convivial Un nom convivial pour le frontDoor corde
frontendEndpoints de terminaison Points de terminaison frontaux disponibles pour les règles de routage. frontendpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingParamètres Paramètres d’équilibrage de charge associés à cette instance Front Door. Équilibrage de ChargeParamètresModèle[]
routageRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

FrontendPoint de terminaison

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Descriptif Valeur
nom_hôte Nom d’hôte du frontendEndpoint. Doit être un nom de domaine. corde
sessionAffinityEnabledState Indique s’il faut autoriser l’affinité de session sur cet hôte. Les options valides sont « Activé » ou « Désactivé » 'Désactivé'
'Activé'
sessionAffinityTtlSeconds INUTILISÉ. Ce champ est ignoré. Durée de vie à utiliser en secondes pour l’affinité de session, le cas échéant. Int
webApplicationFirewallPolicyLink Définit la stratégie de pare-feu d’applications web pour chaque hôte (le cas échéant) FrontendendpointUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

HealthProbeSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Descriptif 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. 'OBTENIR'
'TÊTE'
intervalleEnSecondes Nombre de secondes entre les sondes d’intégrité. Int
chemin Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / corde
protocole Schéma de protocole à utiliser pour cette sonde 'Http'
'Https'

LoadBalancingSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

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

RedirectionConfiguration

Nom Descriptif Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Le fragment fait partie de l’URL qui vient après #. N’incluez pas le #. corde
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. corde
customPath Chemin 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. corde
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplace 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 <clé>=<valeur> format. La première ? et & seront ajoutés automatiquement afin de ne pas les inclure dans le front, mais de séparer plusieurs chaînes de requête avec &. corde
redirectionProtocole 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é'
'Redirection permanente'
'Redirection temporaire'

ResourceTags

Nom Descriptif Valeur

Configuration de l’itinéraire

Nom Descriptif Valeur
@odata.type Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration » pour le type ForwardingConfiguration. Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration » pour le type RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)

Règle de routage

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés de la règle de routage Front Door RoutingRuleProperties

RoutingRuleProperties

Nom Descriptif Valeur
acceptedProtocoles 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 règle. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
frontendEndpoints de terminaison Points de terminaison frontaux associés à cette règle Sous-Ressource[]
motifsToMatch Modèles d’itinéraire de la règle. chaîne de caractères[]
routeConfiguration Référence à la configuration du routage. Configuration de l’itinéraire
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 pare-feu d’applications web pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

Sous-ressource

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

Exemples d’utilisation

Modèles de démarrage rapide Microsoft Azure

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

Modèle Descriptif
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
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
configurer l’affinité de session pour vos noms d’hôtes Front Door

Déployer sur Azure
Ce modèle met à jour une porte d’entrée pour activer l’affinité de session pour votre hôte front-end, en envoyant ainsi le trafic suivant de la même session utilisateur au même back-end.
Contrôler les sondes d’intégrité de vos back-ends 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 dans lesquels les sondes seront envoyées.
Créer un Front Door 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 une redirection HTTP vers HTTPS

Déployer sur Azure
Ce modèle crée une configuration Front Door pour la redirection HTTP vers HTTPS.
Créer une porte d’entrée avec plusieurs back-ends et pools principaux

Déployer sur Azure
Ce modèle crée une porte d’entrée avec é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 Azure Front Door devant la Gestion des API Azure

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

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.
Créer une porte d’entrée avec la mise en cache activée pour certains itinéraires

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.

Définition de ressource Terraform (fournisseur AzAPI)

Le type de ressource frontDoors peut être déployé avec des opérations qui ciblent :

  • groupes de ressources

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

Format de ressource

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

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/frontDoors@2021-06-01"
  name = "string"
  parent_id = "string"
  location = "string"
  tags = {
    {customized property} = "string"
  }
  body = {
    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 la propriété

Microsoft.Network/frontDoors

Nom Descriptif Valeur
emplacement Emplacement des ressources. corde
nom Nom de la ressource corde

Contraintes:
Longueur minimale = 5
Longueur maximale = 64
Modèle = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatoire)
Propriétés Propriétés de l’équilibreur de charge Front Door FrontDoorProperties
étiquettes Balises de ressource Dictionnaire de noms et de valeurs d’étiquettes.
type Type de ressource « Microsoft.Network/frontDoors@2021-06-01 »

Back-end

Nom Descriptif Valeur
adresse Emplacement du serveur principal (adresse IP ou nom de domaine complet) corde
backendHostHeader Valeur à utiliser comme en-tête de l’hôte envoyé au back-end. S’il est vide ou non spécifié, il s’agit par défaut de l’hôte entrant. corde
enabledState Indique s’il faut activer l’utilisation de ce back-end. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
httpPort Numéro de port TCP HTTP. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
httpsPort (en anglais) Numéro de port TCP HTTPS. Doit être compris entre 1 et 65535. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 65535
priorité 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

Contraintes:
Valeur minimale = 1
Valeur maximale = 5
privateLinkAlias Alias de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
privateLinkApprovalMessage Message personnalisé à inclure dans la demande d’approbation pour se connecter à private Link corde
privateLinkLocation Emplacement de la ressource Private Link. Obligatoire uniquement si 'privateLinkResourceId' est rempli corde
privateLinkResourceId ID de ressource de la ressource Private Link. Le remplissage de ce champ facultatif indique que ce back-end est « Privé » corde
poids Poids de ce point de terminaison à des fins d’équilibrage de charge. Int

Contraintes:
Valeur minimale = 1
Valeur maximale = 1 000

BackendPool

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du pool principal Front Door BackendPoolProperties

BackendPoolProperties

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

BackendPoolsParamètres

Nom Descriptif Valeur
enforceCertificateNameCheck Indique s’il faut appliquer la vérification du nom de certificat sur les requêtes HTTPS à tous les pools principaux. Aucun effet sur les requêtes non HTTPS. 'Désactivé'
'Activé'
sendRecvTimeoutSeconds Envoyer et recevoir le délai d’expiration lors du transfert de la demande vers le serveur principal. Lorsque le délai d’expiration est atteint, la requête échoue et retourne. Int

Contraintes:
Valeur minimale = 16

CacheConfiguration

Nom Descriptif 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 exige que la valeur ne soit pas supérieure à un an corde
dynamiqueCompression 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 (virgule séparée). corde
queryParameterStripDirective Traitement des termes de requête d’URL lors de la formation de la clé de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectionConfiguration

Nom Descriptif 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 mis en correspondance par cette règle. Laissez vide pour utiliser le chemin entrant. corde
transfertprotocole Protocole que cette règle utilisera lors du transfert du trafic vers des back-ends. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

FrontDoorProperties

Nom Descriptif Valeur
backendPools Pools principaux disponibles pour les règles de routage. BackendPool[]
backendPoolsParamètres Paramètres de tous les backendPools BackendPoolsParamètres
enabledState État opérationnel de l’équilibreur de charge Front Door. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
nom convivial Un nom convivial pour le frontDoor corde
frontendEndpoints de terminaison Points de terminaison frontaux disponibles pour les règles de routage. frontendpoint[]
healthProbeSettings Paramètres de sonde d’intégrité associés à cette instance Front Door. HealthProbeSettingsModel[]
loadBalancingParamètres Paramètres d’équilibrage de charge associés à cette instance Front Door. Équilibrage de ChargeParamètresModèle[]
routageRules Règles de routage associées à cette porte d’entrée. RoutingRule[]

FrontendPoint de terminaison

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés du point de terminaison frontal FrontendEndpointProperties

FrontendEndpointProperties

Nom Descriptif Valeur
nom_hôte Nom d’hôte du frontendEndpoint. Doit être un nom de domaine. corde
sessionAffinityEnabledState Indique s’il faut autoriser l’affinité de session sur cet hôte. Les options valides sont « Activé » ou « Désactivé » 'Désactivé'
'Activé'
sessionAffinityTtlSeconds INUTILISÉ. Ce champ est ignoré. Durée de vie à utiliser en secondes pour l’affinité de session, le cas échéant. Int
webApplicationFirewallPolicyLink Définit la stratégie de pare-feu d’applications web pour chaque hôte (le cas échéant) FrontendendpointUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

HealthProbeSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres de la sonde d’intégrité HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nom Descriptif 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. 'OBTENIR'
'TÊTE'
intervalleEnSecondes Nombre de secondes entre les sondes d’intégrité. Int
chemin Chemin à utiliser pour la sonde d’intégrité. La valeur par défaut est / corde
protocole Schéma de protocole à utiliser pour cette sonde 'Http'
'Https'

LoadBalancingSettingsModel

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés des paramètres d’équilibrage de charge LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

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

RedirectionConfiguration

Nom Descriptif Valeur
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)
customFragment Fragment à ajouter à l’URL de redirection. Le fragment fait partie de l’URL qui vient après #. N’incluez pas le #. corde
customHost Hôte à rediriger. Laissez vide pour utiliser l’hôte entrant comme hôte de destination. corde
customPath Chemin 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. corde
customQueryString Ensemble de chaînes de requête à placer dans l’URL de redirection. La définition de cette valeur remplace 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 <clé>=<valeur> format. La première ? et & seront ajoutés automatiquement afin de ne pas les inclure dans le front, mais de séparer plusieurs chaînes de requête avec &. corde
redirectionProtocole 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é'
'Redirection permanente'
'Redirection temporaire'

ResourceTags

Nom Descriptif Valeur

Configuration de l’itinéraire

Nom Descriptif Valeur
@odata.type Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration » pour le type ForwardingConfiguration. Défini sur « #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration » pour le type RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatoire)

Règle de routage

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde
nom Nom de la ressource. corde
Propriétés Propriétés de la règle de routage Front Door RoutingRuleProperties

RoutingRuleProperties

Nom Descriptif Valeur
acceptedProtocoles 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 règle. Les valeurs autorisées sont « Enabled » ou « Disabled » 'Désactivé'
'Activé'
frontendEndpoints de terminaison Points de terminaison frontaux associés à cette règle Sous-Ressource[]
motifsToMatch Modèles d’itinéraire de la règle. chaîne de caractères[]
routeConfiguration Référence à la configuration du routage. Configuration de l’itinéraire
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 pare-feu d’applications web pour chaque règle de routage (le cas échéant) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nom Descriptif Valeur
pièce d'identité ID de ressource. corde

Sous-ressource

Nom Descriptif Valeur
pièce d'identité ID de ressource. corde