Compartir a través de


FrontDoors de Microsoft.Network

Definición de recursos de Bicep

El tipo de recurso frontDoors se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente bicep a la plantilla.

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'
  }
}

Objetos RouteConfiguration

Establezca la propiedad @odata.type para especificar el tipo de objeto.

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:

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

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:

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

Valores de propiedad

Back-end

Nombre Descripción Valor
dirección Ubicación del back-end (dirección IP o FQDN) cuerda
backendHostHeader Valor que se va a usar como encabezado de host enviado al back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. cuerda
enabledState Si se va a habilitar el uso de este back-end. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
httpPort Número de puerto TCP HTTP. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
httpsPort Número de puerto TCP HTTPS. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
prioridad Prioridad que se va a usar para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias Alias del recurso private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
privateLinkApprovalMessage Mensaje personalizado que se va a incluir en la solicitud de aprobación para conectarse a Private Link cuerda
privateLinkLocation Ubicación del recurso de Private Link. Solo se requiere si se rellena "privateLinkResourceId" cuerda
privateLinkResourceId Identificador de recurso del recurso de Private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
peso Peso de este punto de conexión con fines de equilibrio de carga. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del grupo de back-end de Front Door BackendPoolProperties

BackendPoolProperties

Nombre Descripción Valor
back-end Conjunto de back-end para este grupo back-end []
healthProbeSettings Configuración del sondeo de estado L7 para un grupo de back-end SubResource
loadBalancingSettings Configuración de equilibrio de carga para un grupo de back-end SubResource

BackendPoolsSettings

Nombre Descripción Valor
enforceCertificateNameCheck Indica si se debe aplicar la comprobación del nombre del certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. 'Deshabilitado'
'Habilitado'
sendRecvTimeoutSeconds Enviar y recibir tiempo de espera al reenviar la solicitud al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. Int

Restricciones:
Valor mínimo = 16

CacheConfiguration

Nombre Descripción Valor
cacheDuration Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. cuerda
dynamicCompression Si se debe usar la compresión dinámica para el contenido almacenado en caché 'Deshabilitado'
'Habilitado'
queryParameters parámetros de consulta para incluir o excluir (separados por comas). cuerda
queryParameterStripDirective Tratamiento de los términos de consulta url al formar la clave de caché. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

ForwardingConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatorio)
backendPool Referencia a backendPool a la que se enruta esta regla. SubResource
cacheConfiguration Configuración de almacenamiento en caché asociada a esta regla. CacheConfiguration
customForwardingPath Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Deje vacío para usar la ruta de acceso entrante. cuerda
forwardingProtocol Protocolo que usará esta regla al reenviar el tráfico a los back-end. 'HttpOnly'
"HttpsOnly"
'MatchRequest'

FrontDoorProperties

Nombre Descripción Valor
backendPools Grupos de back-end disponibles para las reglas de enrutamiento. backendPool[]
backendPoolsSettings Configuración de todos los servidores back-endPool backendPoolsSettings
enabledState Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
friendlyName Un nombre descriptivo para frontDoor cuerda
frontendEndpoints Puntos de conexión de front-end disponibles para las reglas de enrutamiento. frontendEndpoint[]
healthProbeSettings Configuración de sondeo de estado asociada a esta instancia de Front Door. healthProbeSettingsModel[]
loadBalancingSettings Configuración de equilibrio de carga asociada a esta instancia de Front Door. LoadBalancingSettingsModel[]
routingRules Reglas de enrutamiento asociadas a esta instancia de Front Door. routingRule[]

FrontendEndpoint

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del punto de conexión de front-end FrontendEndpointProperties

FrontendEndpointProperties

Nombre Descripción Valor
hostName Nombre de host del frontendEndpoint. Debe ser un nombre de dominio. cuerda
sessionAffinityEnabledState Si se permite la afinidad de sesión en este host. Las opciones válidas son "Habilitado" o "Deshabilitado". 'Deshabilitado'
'Habilitado'
sessionAffinityTtlSeconds NO USADO. Este campo se omitirá. TTL que se usará en segundos para la afinidad de sesión, si procede. Int
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada host (si procede) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

HealthProbeSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración del sondeo de estado HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nombre Descripción Valor
enabledState Indica si se deben realizar sondeos de estado en los back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un solo back-end habilitado en un único grupo de back-end habilitado. 'Deshabilitado'
'Habilitado'
healthProbeMethod Configura el método HTTP que se va a usar para sondear los back-end definidos en backendPools. 'GET'
'HEAD'
intervalInSeconds Número de segundos entre sondeos de estado. Int
camino Ruta de acceso que se va a usar para el sondeo de estado. El valor predeterminado es / cuerda
protocolo Esquema de protocolo que se va a usar para este sondeo 'Http'
'Https'

LoadBalancingSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración de equilibrio de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nombre Descripción Valor
additionalLatencyMilliseconds Latencia adicional en milisegundos para que los sondeos se coloquen en el depósito de latencia más baja. Int
sampleSize El número de ejemplos que se deben tener en cuenta para las decisiones de equilibrio de carga Int
successfulSamplesRequired Número de muestras dentro del período de muestra que debe realizarse correctamente Int

Microsoft.Network/frontDoors

Nombre Descripción Valor
ubicación Ubicación del recurso. cuerda
nombre El nombre del recurso cuerda

Restricciones:
Longitud mínima = 5
Longitud máxima = 5
Patrón = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatorio)
Propiedades Propiedades del equilibrador de carga de Front Door FrontDoorProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas

RedirectConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)
customFragment Fragmento que se va a agregar a la dirección URL de redireccionamiento. El fragmento es la parte de la dirección URL que viene después de #. No incluya #. cuerda
customHost Host para redirigir. Deje vacío para usar el host entrante como host de destino. cuerda
customPath Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. cuerda
customQueryString Conjunto de cadenas de consulta que se colocarán en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe estar en <clave>=<valor> formato. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, pero separe varias cadenas de consulta con &. cuerda
redirectProtocol Protocolo del destino al que se redirige el tráfico. 'HttpOnly'
"HttpsOnly"
'MatchRequest'
redirectType El tipo de redireccionamiento que usará la regla al redirigir el tráfico. 'Encontrado'
'Movido'
'PermanentRedirect'
'TemporaryRedirect'

ResourceTags

Nombre Descripción Valor

RouteConfiguration

Nombre Descripción Valor
@odata.type Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" para el tipo ForwardingConfiguration. Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" para el tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)

RoutingRule

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la regla de enrutamiento de Front Door RoutingRuleProperties

RoutingRuleProperties

Nombre Descripción Valor
acceptedProtocols Esquemas de protocolo que coincidirán con esta regla Matriz de cadenas que contiene cualquiera de:
'Http'
'Https'
enabledState Indica si se va a habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
frontendEndpoints Puntos de conexión de front-end asociados a esta regla subrecurso[]
patternsToMatch Patrones de ruta de la regla. string[]
routeConfiguration Referencia a la configuración de enrutamiento. RouteConfiguration
rulesEngine Referencia a una configuración específica del motor de reglas que se aplicará a esta ruta. SubResource
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada regla de enrutamiento (si procede) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

SubResource

Nombre Descripción Valor
identificación Identificador de recurso. cuerda

Ejemplos de inicio rápido

En los ejemplos de inicio rápido siguientes se implementa este tipo de recurso.

Archivo de Bicep Descripción
Agregar un dominio personalizado y un certificado personalizado con Front Door Esta plantilla incorpora y protege un dominio personalizado con Front Door con un certificado administrado por el cliente
Agregar un dominio personalizado y un certificado administrado con Front Door Esta plantilla incorpora y protege un dominio personalizado con Front Door
Sondeos de estado de control para los back-end en Front Door Esta plantilla actualiza Front Door para cambiar la configuración del sondeo de estado estableciendo la ruta de acceso del sondeo y también los intervalos en los que se enviarán los sondeos.
Creación de un básico de Front Door Esta plantilla crea una configuración básica de Front Door con un único back-end.
Crear una instancia de Front Door con redirección HTTP a HTTPS Esta plantilla crea una configuración de Front Door para el redireccionamiento HTTP a HTTPS.

Definición de recursos de plantilla de ARM

El tipo de recurso frontDoors se puede implementar con operaciones destinadas a:

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente JSON a la plantilla.

{
  "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"
  }
}

Objetos RouteConfiguration

Establezca la propiedad @odata.type para especificar el tipo de objeto.

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:

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

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:

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

Valores de propiedad

Back-end

Nombre Descripción Valor
dirección Ubicación del back-end (dirección IP o FQDN) cuerda
backendHostHeader Valor que se va a usar como encabezado de host enviado al back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. cuerda
enabledState Si se va a habilitar el uso de este back-end. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
httpPort Número de puerto TCP HTTP. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
httpsPort Número de puerto TCP HTTPS. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
prioridad Prioridad que se va a usar para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias Alias del recurso private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
privateLinkApprovalMessage Mensaje personalizado que se va a incluir en la solicitud de aprobación para conectarse a Private Link cuerda
privateLinkLocation Ubicación del recurso de Private Link. Solo se requiere si se rellena "privateLinkResourceId" cuerda
privateLinkResourceId Identificador de recurso del recurso de Private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
peso Peso de este punto de conexión con fines de equilibrio de carga. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del grupo de back-end de Front Door BackendPoolProperties

BackendPoolProperties

Nombre Descripción Valor
back-end Conjunto de back-end para este grupo back-end []
healthProbeSettings Configuración del sondeo de estado L7 para un grupo de back-end SubResource
loadBalancingSettings Configuración de equilibrio de carga para un grupo de back-end SubResource

BackendPoolsSettings

Nombre Descripción Valor
enforceCertificateNameCheck Indica si se debe aplicar la comprobación del nombre del certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. 'Deshabilitado'
'Habilitado'
sendRecvTimeoutSeconds Enviar y recibir tiempo de espera al reenviar la solicitud al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. Int

Restricciones:
Valor mínimo = 16

CacheConfiguration

Nombre Descripción Valor
cacheDuration Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. cuerda
dynamicCompression Si se debe usar la compresión dinámica para el contenido almacenado en caché 'Deshabilitado'
'Habilitado'
queryParameters parámetros de consulta para incluir o excluir (separados por comas). cuerda
queryParameterStripDirective Tratamiento de los términos de consulta url al formar la clave de caché. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

ForwardingConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatorio)
backendPool Referencia a backendPool a la que se enruta esta regla. SubResource
cacheConfiguration Configuración de almacenamiento en caché asociada a esta regla. CacheConfiguration
customForwardingPath Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Deje vacío para usar la ruta de acceso entrante. cuerda
forwardingProtocol Protocolo que usará esta regla al reenviar el tráfico a los back-end. 'HttpOnly'
"HttpsOnly"
'MatchRequest'

FrontDoorProperties

Nombre Descripción Valor
backendPools Grupos de back-end disponibles para las reglas de enrutamiento. backendPool[]
backendPoolsSettings Configuración de todos los servidores back-endPool backendPoolsSettings
enabledState Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
friendlyName Un nombre descriptivo para frontDoor cuerda
frontendEndpoints Puntos de conexión de front-end disponibles para las reglas de enrutamiento. frontendEndpoint[]
healthProbeSettings Configuración de sondeo de estado asociada a esta instancia de Front Door. healthProbeSettingsModel[]
loadBalancingSettings Configuración de equilibrio de carga asociada a esta instancia de Front Door. LoadBalancingSettingsModel[]
routingRules Reglas de enrutamiento asociadas a esta instancia de Front Door. routingRule[]

FrontendEndpoint

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del punto de conexión de front-end FrontendEndpointProperties

FrontendEndpointProperties

Nombre Descripción Valor
hostName Nombre de host del frontendEndpoint. Debe ser un nombre de dominio. cuerda
sessionAffinityEnabledState Si se permite la afinidad de sesión en este host. Las opciones válidas son "Habilitado" o "Deshabilitado". 'Deshabilitado'
'Habilitado'
sessionAffinityTtlSeconds NO USADO. Este campo se omitirá. TTL que se usará en segundos para la afinidad de sesión, si procede. Int
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada host (si procede) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

HealthProbeSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración del sondeo de estado HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nombre Descripción Valor
enabledState Indica si se deben realizar sondeos de estado en los back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un solo back-end habilitado en un único grupo de back-end habilitado. 'Deshabilitado'
'Habilitado'
healthProbeMethod Configura el método HTTP que se va a usar para sondear los back-end definidos en backendPools. 'GET'
'HEAD'
intervalInSeconds Número de segundos entre sondeos de estado. Int
camino Ruta de acceso que se va a usar para el sondeo de estado. El valor predeterminado es / cuerda
protocolo Esquema de protocolo que se va a usar para este sondeo 'Http'
'Https'

LoadBalancingSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración de equilibrio de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nombre Descripción Valor
additionalLatencyMilliseconds Latencia adicional en milisegundos para que los sondeos se coloquen en el depósito de latencia más baja. Int
sampleSize El número de ejemplos que se deben tener en cuenta para las decisiones de equilibrio de carga Int
successfulSamplesRequired Número de muestras dentro del período de muestra que debe realizarse correctamente Int

Microsoft.Network/frontDoors

Nombre Descripción Valor
apiVersion La versión de api '2021-06-01'
ubicación Ubicación del recurso. cuerda
nombre El nombre del recurso cuerda

Restricciones:
Longitud mínima = 5
Longitud máxima = 5
Patrón = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatorio)
Propiedades Propiedades del equilibrador de carga de Front Door FrontDoorProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta. Consulte etiquetas de en plantillas
tipo El tipo de recurso 'Microsoft.Network/frontDoors'

RedirectConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)
customFragment Fragmento que se va a agregar a la dirección URL de redireccionamiento. El fragmento es la parte de la dirección URL que viene después de #. No incluya #. cuerda
customHost Host para redirigir. Deje vacío para usar el host entrante como host de destino. cuerda
customPath Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. cuerda
customQueryString Conjunto de cadenas de consulta que se colocarán en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe estar en <clave>=<valor> formato. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, pero separe varias cadenas de consulta con &. cuerda
redirectProtocol Protocolo del destino al que se redirige el tráfico. 'HttpOnly'
"HttpsOnly"
'MatchRequest'
redirectType El tipo de redireccionamiento que usará la regla al redirigir el tráfico. 'Encontrado'
'Movido'
'PermanentRedirect'
'TemporaryRedirect'

ResourceTags

Nombre Descripción Valor

RouteConfiguration

Nombre Descripción Valor
@odata.type Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" para el tipo ForwardingConfiguration. Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" para el tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)

RoutingRule

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la regla de enrutamiento de Front Door RoutingRuleProperties

RoutingRuleProperties

Nombre Descripción Valor
acceptedProtocols Esquemas de protocolo que coincidirán con esta regla Matriz de cadenas que contiene cualquiera de:
'Http'
'Https'
enabledState Indica si se va a habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
frontendEndpoints Puntos de conexión de front-end asociados a esta regla subrecurso[]
patternsToMatch Patrones de ruta de la regla. string[]
routeConfiguration Referencia a la configuración de enrutamiento. RouteConfiguration
rulesEngine Referencia a una configuración específica del motor de reglas que se aplicará a esta ruta. SubResource
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada regla de enrutamiento (si procede) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

SubResource

Nombre Descripción Valor
identificación Identificador de recurso. cuerda

Plantillas de inicio rápido

Las siguientes plantillas de inicio rápido implementan este tipo de recurso.

Plantilla Descripción
Agregar un dominio personalizado y un certificado personalizado con Front Door

Implementación en Azure
Esta plantilla incorpora y protege un dominio personalizado con Front Door con un certificado administrado por el cliente
Agregar un dominio personalizado y un certificado administrado con Front Door

Implementación en Azure
Esta plantilla incorpora y protege un dominio personalizado con Front Door
Configurar afinidad de sesión para los nombres de host de Front Door

Implementación en Azure
Esta plantilla actualiza una instancia de Front Door para habilitar la afinidad de sesión para el host de front-end, por lo que envía tráfico posterior desde la misma sesión de usuario al mismo back-end.
Sondeos de estado de control para los back-end en Front Door

Implementación en Azure
Esta plantilla actualiza Front Door para cambiar la configuración del sondeo de estado estableciendo la ruta de acceso del sondeo y también los intervalos en los que se enviarán los sondeos.
Creación de un básico de Front Door

Implementación en Azure
Esta plantilla crea una configuración básica de Front Door con un único back-end.
Crear una instancia de Front Door con redirección HTTP a HTTPS

Implementación en Azure
Esta plantilla crea una configuración de Front Door para el redireccionamiento HTTP a HTTPS.
Crear una instancia de Front Door con varios back-end y grupos de back-end

Implementación en Azure
Esta plantilla crea una instancia de Front Door con equilibrio de carga configurado para varios back-end en un grupo de back-end y también en grupos de back-end en función de la ruta de acceso de dirección URL.
Creación de Azure Front Door delante de Azure API Management

Implementación en Azure
En este ejemplo se muestra cómo usar Azure Front Door como equilibrador de carga global delante de Azure API Management.
Creación de Front Door con Active-Standby de configuración

Implementación en Azure
Esta plantilla crea una instancia de Front Door que muestra el enrutamiento basado en prioridad para Active-Standby topología de aplicación.
Creación de Front Door con almacenamiento en caché habilitado para determinadas rutas

Implementación en Azure
Esta plantilla crea una instancia de Front Door con el almacenamiento en caché habilitado para la configuración de enrutamiento definida, por lo que almacena en caché los recursos estáticos de la carga de trabajo.

Definición de recursos de Terraform (proveedor AzAPI)

El tipo de recurso frontDoors se puede implementar con operaciones destinadas a:

  • grupos de recursos de

Para obtener una lista de las propiedades modificadas en cada versión de API, consulte registro de cambios.

Formato de recurso

Para crear un recurso Microsoft.Network/frontDoors, agregue el siguiente terraform a la plantilla.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Network/frontDoors@2021-06-01"
  name = "string"
  location = "string"
  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"
            }
          }
        }
      ]
    }
  })
  tags = {
    {customized property} = "string"
  }
}

Objetos RouteConfiguration

Establezca la propiedad @odata.type para especificar el tipo de objeto.

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, use:

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

Para #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, use:

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

Valores de propiedad

Back-end

Nombre Descripción Valor
dirección Ubicación del back-end (dirección IP o FQDN) cuerda
backendHostHeader Valor que se va a usar como encabezado de host enviado al back-end. Si está en blanco o no especificado, este valor predeterminado es el host entrante. cuerda
enabledState Si se va a habilitar el uso de este back-end. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
httpPort Número de puerto TCP HTTP. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
httpsPort Número de puerto TCP HTTPS. Debe estar entre 1 y 65535. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 65535
prioridad Prioridad que se va a usar para el equilibrio de carga. Las prioridades más altas no se usarán para el equilibrio de carga si algún back-end de prioridad inferior es correcto. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias Alias del recurso private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
privateLinkApprovalMessage Mensaje personalizado que se va a incluir en la solicitud de aprobación para conectarse a Private Link cuerda
privateLinkLocation Ubicación del recurso de Private Link. Solo se requiere si se rellena "privateLinkResourceId" cuerda
privateLinkResourceId Identificador de recurso del recurso de Private Link. Rellenar este campo opcional indica que este back-end es "Privado". cuerda
peso Peso de este punto de conexión con fines de equilibrio de carga. Int

Restricciones:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del grupo de back-end de Front Door BackendPoolProperties

BackendPoolProperties

Nombre Descripción Valor
back-end Conjunto de back-end para este grupo back-end []
healthProbeSettings Configuración del sondeo de estado L7 para un grupo de back-end SubResource
loadBalancingSettings Configuración de equilibrio de carga para un grupo de back-end SubResource

BackendPoolsSettings

Nombre Descripción Valor
enforceCertificateNameCheck Indica si se debe aplicar la comprobación del nombre del certificado en las solicitudes HTTPS a todos los grupos de back-end. No hay ningún efecto en las solicitudes que no son HTTPS. 'Deshabilitado'
'Habilitado'
sendRecvTimeoutSeconds Enviar y recibir tiempo de espera al reenviar la solicitud al back-end. Cuando se alcanza el tiempo de espera, se produce un error en la solicitud y se devuelve. Int

Restricciones:
Valor mínimo = 16

CacheConfiguration

Nombre Descripción Valor
cacheDuration Duración durante la que se debe almacenar en caché el contenido. El formato permitido está en formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requiere que el valor no sea superior a un año. cuerda
dynamicCompression Si se debe usar la compresión dinámica para el contenido almacenado en caché 'Deshabilitado'
'Habilitado'
queryParameters parámetros de consulta para incluir o excluir (separados por comas). cuerda
queryParameterStripDirective Tratamiento de los términos de consulta url al formar la clave de caché. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

ForwardingConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obligatorio)
backendPool Referencia a backendPool a la que se enruta esta regla. SubResource
cacheConfiguration Configuración de almacenamiento en caché asociada a esta regla. CacheConfiguration
customForwardingPath Ruta de acceso personalizada que se usa para reescribir las rutas de acceso de recursos coincidentes con esta regla. Deje vacío para usar la ruta de acceso entrante. cuerda
forwardingProtocol Protocolo que usará esta regla al reenviar el tráfico a los back-end. 'HttpOnly'
"HttpsOnly"
'MatchRequest'

FrontDoorProperties

Nombre Descripción Valor
backendPools Grupos de back-end disponibles para las reglas de enrutamiento. backendPool[]
backendPoolsSettings Configuración de todos los servidores back-endPool backendPoolsSettings
enabledState Estado operativo del equilibrador de carga de Front Door. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
friendlyName Un nombre descriptivo para frontDoor cuerda
frontendEndpoints Puntos de conexión de front-end disponibles para las reglas de enrutamiento. frontendEndpoint[]
healthProbeSettings Configuración de sondeo de estado asociada a esta instancia de Front Door. healthProbeSettingsModel[]
loadBalancingSettings Configuración de equilibrio de carga asociada a esta instancia de Front Door. LoadBalancingSettingsModel[]
routingRules Reglas de enrutamiento asociadas a esta instancia de Front Door. routingRule[]

FrontendEndpoint

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades del punto de conexión de front-end FrontendEndpointProperties

FrontendEndpointProperties

Nombre Descripción Valor
hostName Nombre de host del frontendEndpoint. Debe ser un nombre de dominio. cuerda
sessionAffinityEnabledState Si se permite la afinidad de sesión en este host. Las opciones válidas son "Habilitado" o "Deshabilitado". 'Deshabilitado'
'Habilitado'
sessionAffinityTtlSeconds NO USADO. Este campo se omitirá. TTL que se usará en segundos para la afinidad de sesión, si procede. Int
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada host (si procede) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

HealthProbeSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración del sondeo de estado HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nombre Descripción Valor
enabledState Indica si se deben realizar sondeos de estado en los back-end definidos en backendPools. Los sondeos de estado solo se pueden deshabilitar si hay un solo back-end habilitado en un único grupo de back-end habilitado. 'Deshabilitado'
'Habilitado'
healthProbeMethod Configura el método HTTP que se va a usar para sondear los back-end definidos en backendPools. 'GET'
'HEAD'
intervalInSeconds Número de segundos entre sondeos de estado. Int
camino Ruta de acceso que se va a usar para el sondeo de estado. El valor predeterminado es / cuerda
protocolo Esquema de protocolo que se va a usar para este sondeo 'Http'
'Https'

LoadBalancingSettingsModel

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la configuración de equilibrio de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nombre Descripción Valor
additionalLatencyMilliseconds Latencia adicional en milisegundos para que los sondeos se coloquen en el depósito de latencia más baja. Int
sampleSize El número de ejemplos que se deben tener en cuenta para las decisiones de equilibrio de carga Int
successfulSamplesRequired Número de muestras dentro del período de muestra que debe realizarse correctamente Int

Microsoft.Network/frontDoors

Nombre Descripción Valor
ubicación Ubicación del recurso. cuerda
nombre El nombre del recurso cuerda

Restricciones:
Longitud mínima = 5
Longitud máxima = 5
Patrón = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obligatorio)
Propiedades Propiedades del equilibrador de carga de Front Door FrontDoorProperties
Etiquetas Etiquetas de recursos Diccionario de nombres y valores de etiqueta.
tipo El tipo de recurso "Microsoft.Network/frontDoors@2021-06-01"

RedirectConfiguration

Nombre Descripción Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)
customFragment Fragmento que se va a agregar a la dirección URL de redireccionamiento. El fragmento es la parte de la dirección URL que viene después de #. No incluya #. cuerda
customHost Host para redirigir. Deje vacío para usar el host entrante como host de destino. cuerda
customPath Ruta de acceso completa que se va a redirigir. La ruta de acceso no puede estar vacía y debe comenzar con /. Deje vacío para usar la ruta de acceso entrante como ruta de acceso de destino. cuerda
customQueryString Conjunto de cadenas de consulta que se colocarán en la dirección URL de redireccionamiento. Establecer este valor reemplazaría cualquier cadena de consulta existente; deje vacío para conservar la cadena de consulta entrante. La cadena de consulta debe estar en <clave>=<valor> formato. ¿La primera? y & se agregarán automáticamente, por lo que no los incluyan en el frente, pero separe varias cadenas de consulta con &. cuerda
redirectProtocol Protocolo del destino al que se redirige el tráfico. 'HttpOnly'
"HttpsOnly"
'MatchRequest'
redirectType El tipo de redireccionamiento que usará la regla al redirigir el tráfico. 'Encontrado'
'Movido'
'PermanentRedirect'
'TemporaryRedirect'

ResourceTags

Nombre Descripción Valor

RouteConfiguration

Nombre Descripción Valor
@odata.type Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" para el tipo ForwardingConfiguration. Establezca en "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" para el tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obligatorio)

RoutingRule

Nombre Descripción Valor
identificación Identificador de recurso. cuerda
nombre Nombre del recurso. cuerda
Propiedades Propiedades de la regla de enrutamiento de Front Door RoutingRuleProperties

RoutingRuleProperties

Nombre Descripción Valor
acceptedProtocols Esquemas de protocolo que coincidirán con esta regla Matriz de cadenas que contiene cualquiera de:
'Http'
'Https'
enabledState Indica si se va a habilitar el uso de esta regla. Los valores permitidos son "Enabled" o "Disabled" 'Deshabilitado'
'Habilitado'
frontendEndpoints Puntos de conexión de front-end asociados a esta regla subrecurso[]
patternsToMatch Patrones de ruta de la regla. string[]
routeConfiguration Referencia a la configuración de enrutamiento. RouteConfiguration
rulesEngine Referencia a una configuración específica del motor de reglas que se aplicará a esta ruta. SubResource
webApplicationFirewallPolicyLink Define la directiva de firewall de aplicaciones web para cada regla de enrutamiento (si procede) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Nombre Descripción Valor
identificación Identificador de recurso. cuerda

SubResource

Nombre Descripción Valor
identificación Identificador de recurso. cuerda