Partilhar via


FrontDoors Microsoft.Network 2020-05-01

Definição de recursos do bíceps

O tipo de recurso frontDoors pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/frontDoors, adicione o seguinte Bíceps ao seu modelo.

resource symbolicname 'Microsoft.Network/frontDoors@2020-05-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

Defina a propriedade @odata.type para especificar o 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 propriedade

Back-end

Designação Descrição Valor
Endereço Localização do back-end (endereço IP ou FQDN) string
backendHostHeader O valor a ser usado como o cabeçalho do host enviado para o back-end. Se estiver em branco ou não especificado, o padrão será para o host de entrada. string
enabledState Se o uso desse back-end deve ser habilitado. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
Porta http O número da porta TCP HTTP. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
Porta https: O número da porta TCP HTTPS. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
prioridade Prioridade a ser usada para balanceamento de carga. Prioridades mais altas não serão usadas para balanceamento de carga se qualquer back-end de prioridade mais baixa estiver íntegro. Int

Restrições:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias O alias do recurso Private Link. Preencher este campo opcional indica que este back-end é 'Privado' string
privateLinkApprovalMessage Uma mensagem personalizada a ser incluída na solicitação de aprovação para se conectar ao Link Privado string
privateLinkLocalização A localização do recurso Private Link. Necessário somente se 'privateLinkResourceId' estiver preenchido string
privateLinkResourceId A ID do recurso do link privado. Preencher este campo opcional indica que este back-end é 'Privado' string
peso Peso deste ponto final para fins de balanceamento de carga. Int

Restrições:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da piscina de back-end da porta da frente BackendPoolProperties

BackendPoolProperties

Designação Descrição Valor
Back-ends O conjunto de backends para este pool Backend[]
healthProbeSettings Configurações da sonda de integridade L7 para um pool de back-end SubResource
loadBalancingSettings Configurações de balanceamento de carga para um pool de back-end SubResource

BackendPoolsSettings

Designação Descrição Valor
enforceCertificateNameCheck Se a verificação do nome do certificado deve ser imposta em solicitações HTTPS a todos os pools de back-end. Nenhum efeito em solicitações não-HTTPS. 'Desativado'
'Habilitado'
sendRecvTimeoutSeconds Enviar e receber o tempo limite no encaminhamento da solicitação para o back-end. Quando o tempo limite é atingido, a solicitação falha e retorna. Int

Restrições:
Valor mínimo = 16

CacheConfiguration

Designação Descrição Valor
cacheDuração A duração durante a qual o conteúdo precisa ser armazenado em cache. O formato permitido está no formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requer que o valor não seja superior a um ano string
dynamicCompression Se a compactação dinâmica deve ser usada para conteúdo armazenado em cache 'Desativado'
'Habilitado'
queryParameters parâmetros de consulta para incluir ou excluir (separados por vírgula). string
queryParameterStripDirective Tratamento de termos de consulta de URL ao formar a chave de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

EncaminhamentoConfiguração

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obrigatório)
backendPool Uma referência ao BackendPool para o qual esta regra é encaminhada. SubResource
cacheConfiguração A configuração de cache associada a esta regra. CacheConfiguration
customForwardingPath Um caminho personalizado usado para reescrever caminhos de recursos correspondentes a esta regra. Deixe vazio para usar o caminho de entrada. string
Protocolo de encaminhamento Protocolo que esta regra usará ao encaminhar tráfego para back-ends. 'Somente Http'
'Apenas https'
'MatchRequest'

FrontDoorPropriedades

Designação Descrição Valor
backendPools Pools de back-end disponíveis para regras de roteamento. BackendPool[]
backendPoolsSettings Configurações para todos os backendPools BackendPoolsSettings
enabledState Estado operacional do balanceador de carga Front Door. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
friendlyNome Um nome amigável para o frontDoor string
frontendEndpoints Frontend endpoints disponíveis para regras de roteamento. FrontendEndpoint[]
healthProbeSettings Configurações da sonda de integridade associadas a essa instância do Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Configurações de balanceamento de carga associadas a essa instância do Front Door. LoadBalancingSettingsModel[]
roteamentoRegras Regras de roteamento associadas a esta porta da frente. RoutingRule[]

FrontendEndpoint

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades do ponto de extremidade Frontend FrontendEndpointProperties

FrontendEndpointProperties

Designação Descrição Valor
Nome do host O nome do host do frontendEndpoint. Deve ser um nome de domínio. string
sessionAffinityEnabledState Se deve permitir afinidade de sessão neste anfitrião. As opções válidas são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
sessãoAfinidadeTtlSegundos NÃO UTILIZADO. Este campo será ignorado. O TTL a ser usado em segundos para afinidade de sessão, se aplicável. Int
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada host (se aplicável) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

HealthProbeSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações da sonda de integridade HealthProbeSettingsProperties

HealthProbeSettingsProperties

Designação Descrição Valor
enabledState Se as sondas de integridade devem ser feitas em back-ends definidos em backendPools. Os testes de integridade só podem ser desabilitados se houver um único back-end habilitado em um único pool de back-end habilitado. 'Desativado'
'Habilitado'
healthProbeMethod Configura qual método HTTP usar para investigar os back-ends definidos em backendPools. 'OBTER'
'CABEÇA'
intervalInSeconds O número de segundos entre as sondas de saúde. Int
caminho O caminho a ser usado para a sonda de integridade. O padrão é / string
protocolo Esquema de protocolo a utilizar para esta sonda «Http»
'Https'

LoadBalancingSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações de balanceamento de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Designação Descrição Valor
adicionalLatencyMilliseconds A latência adicional em milissegundos para que as sondas caiam no bucket de latência mais baixa Int
amostraTamanho da amostra O número de amostras a serem consideradas para decisões de balanceamento de carga Int
successfulSamplesRequired O número de amostras dentro do período de amostragem que deve ser bem-sucedido Int

Microsoft.Network/frontDoors

Designação Descrição Valor
Localização Localização do recurso. string
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 5
Comprimento máximo = 5
Padrão = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obrigatório)
propriedades Propriedades do balanceador de carga da porta frontal FrontDoorProperties
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos

RedirectConfiguration

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)
customFragment Fragmente para adicionar ao URL de redirecionamento. Fragmento é a parte do URL que vem depois de #. Não inclua o #. string
customHost Host para redirecionar. Deixe em branco para usar o host de entrada como host de destino. string
customPath O caminho completo para redirecionar. O caminho não pode estar vazio e deve começar com /. Deixe em branco para usar o caminho de entrada como caminho de destino. string
customQueryString O conjunto de cadeias de caracteres de consulta a serem colocadas na URL de redirecionamento. Definir esse valor substituiria qualquer cadeia de caracteres de consulta existente; Deixe em branco para preservar a cadeia de caracteres de consulta de entrada. A cadeia de caracteres de consulta deve estar em <chave>=<valor> formato. O primeiro ? e & serão adicionados automaticamente, portanto, não os inclua na frente, mas separe várias cadeias de caracteres de consulta com &. string
redirectProtocol O protocolo do destino para onde o tráfego é redirecionado 'Somente Http'
'Apenas https'
'MatchRequest'
redirectType O tipo de redirecionamento que a regra usará ao redirecionar o tráfego. 'Encontrado'
'Comovido'
'PermanentRedirect'
'RedirecionamentoTemporário'

Tags de Recursos

Designação Descrição Valor

RouteConfiguration

Designação Descrição Valor
@odata.type Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' para o tipo ForwardingConfiguration. Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' para o tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)

Regra de Roteamento

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da regra de roteamento da porta frontal RoutingRuleProperties

RoutingRuleProperties

Designação Descrição Valor
aceitosProtocolos Esquemas de protocolo correspondentes a esta regra Matriz de cadeia de caracteres contendo qualquer uma das:
«Http»
'Https'
enabledState Se deve ou não permitir o uso desta regra. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
frontendEndpoints Pontos de extremidade de front-end associados a esta regra SubResource[]
patternsToMatch Os padrões de rota da regra. string[]
routeConfiguration Uma referência à configuração de roteamento. RouteConfiguration
rulesEngine Uma referência a uma configuração específica do mecanismo de regras a ser aplicada a essa rota. SubResource
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada regra de roteamento (se aplicável) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

Subrecurso

Designação Descrição Valor
ID ID do recurso. string

Exemplos de início rápido

Os exemplos de início rápido a seguir implantam esse tipo de recurso.

Arquivo Bicep Descrição
Adicionar domínio personalizado e certificado personalizado com o Front Door Este modelo integra e protege um domínio personalizado com o Front Door com um certificado gerenciado pelo cliente
Adicionar domínio personalizado e certificado gerenciado com o Front Door Este modelo integra e protege um domínio personalizado com o Front Door
Control Health Probes para os seus backends no Front Door Este modelo atualiza a porta frontal para alterar as configurações da sonda de integridade definindo o caminho da sonda e também os intervalos em que as sondas serão enviadas.
Crie um básico da porta da frente Este modelo cria uma configuração básica de porta frontal com um único back-end.
Criar uma porta frontal com de redirecionamento HTTP para HTTPS Este modelo cria uma configuração de porta frontal para redirecionamento HTTP para HTTPS.

Definição de recurso de modelo ARM

O tipo de recurso frontDoors pode ser implantado com operações que visam:

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/frontDoors, adicione o seguinte JSON ao seu modelo.

{
  "type": "Microsoft.Network/frontDoors",
  "apiVersion": "2020-05-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

Defina a propriedade @odata.type para especificar o 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 propriedade

Back-end

Designação Descrição Valor
Endereço Localização do back-end (endereço IP ou FQDN) string
backendHostHeader O valor a ser usado como o cabeçalho do host enviado para o back-end. Se estiver em branco ou não especificado, o padrão será para o host de entrada. string
enabledState Se o uso desse back-end deve ser habilitado. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
Porta http O número da porta TCP HTTP. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
Porta https: O número da porta TCP HTTPS. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
prioridade Prioridade a ser usada para balanceamento de carga. Prioridades mais altas não serão usadas para balanceamento de carga se qualquer back-end de prioridade mais baixa estiver íntegro. Int

Restrições:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias O alias do recurso Private Link. Preencher este campo opcional indica que este back-end é 'Privado' string
privateLinkApprovalMessage Uma mensagem personalizada a ser incluída na solicitação de aprovação para se conectar ao Link Privado string
privateLinkLocalização A localização do recurso Private Link. Necessário somente se 'privateLinkResourceId' estiver preenchido string
privateLinkResourceId A ID do recurso do link privado. Preencher este campo opcional indica que este back-end é 'Privado' string
peso Peso deste ponto final para fins de balanceamento de carga. Int

Restrições:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da piscina de back-end da porta da frente BackendPoolProperties

BackendPoolProperties

Designação Descrição Valor
Back-ends O conjunto de backends para este pool Backend[]
healthProbeSettings Configurações da sonda de integridade L7 para um pool de back-end SubResource
loadBalancingSettings Configurações de balanceamento de carga para um pool de back-end SubResource

BackendPoolsSettings

Designação Descrição Valor
enforceCertificateNameCheck Se a verificação do nome do certificado deve ser imposta em solicitações HTTPS a todos os pools de back-end. Nenhum efeito em solicitações não-HTTPS. 'Desativado'
'Habilitado'
sendRecvTimeoutSeconds Enviar e receber o tempo limite no encaminhamento da solicitação para o back-end. Quando o tempo limite é atingido, a solicitação falha e retorna. Int

Restrições:
Valor mínimo = 16

CacheConfiguration

Designação Descrição Valor
cacheDuração A duração durante a qual o conteúdo precisa ser armazenado em cache. O formato permitido está no formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requer que o valor não seja superior a um ano string
dynamicCompression Se a compactação dinâmica deve ser usada para conteúdo armazenado em cache 'Desativado'
'Habilitado'
queryParameters parâmetros de consulta para incluir ou excluir (separados por vírgula). string
queryParameterStripDirective Tratamento de termos de consulta de URL ao formar a chave de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

EncaminhamentoConfiguração

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obrigatório)
backendPool Uma referência ao BackendPool para o qual esta regra é encaminhada. SubResource
cacheConfiguração A configuração de cache associada a esta regra. CacheConfiguration
customForwardingPath Um caminho personalizado usado para reescrever caminhos de recursos correspondentes a esta regra. Deixe vazio para usar o caminho de entrada. string
Protocolo de encaminhamento Protocolo que esta regra usará ao encaminhar tráfego para back-ends. 'Somente Http'
'Apenas https'
'MatchRequest'

FrontDoorPropriedades

Designação Descrição Valor
backendPools Pools de back-end disponíveis para regras de roteamento. BackendPool[]
backendPoolsSettings Configurações para todos os backendPools BackendPoolsSettings
enabledState Estado operacional do balanceador de carga Front Door. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
friendlyNome Um nome amigável para o frontDoor string
frontendEndpoints Frontend endpoints disponíveis para regras de roteamento. FrontendEndpoint[]
healthProbeSettings Configurações da sonda de integridade associadas a essa instância do Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Configurações de balanceamento de carga associadas a essa instância do Front Door. LoadBalancingSettingsModel[]
roteamentoRegras Regras de roteamento associadas a esta porta da frente. RoutingRule[]

FrontendEndpoint

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades do ponto de extremidade Frontend FrontendEndpointProperties

FrontendEndpointProperties

Designação Descrição Valor
Nome do host O nome do host do frontendEndpoint. Deve ser um nome de domínio. string
sessionAffinityEnabledState Se deve permitir afinidade de sessão neste anfitrião. As opções válidas são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
sessãoAfinidadeTtlSegundos NÃO UTILIZADO. Este campo será ignorado. O TTL a ser usado em segundos para afinidade de sessão, se aplicável. Int
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada host (se aplicável) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

HealthProbeSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações da sonda de integridade HealthProbeSettingsProperties

HealthProbeSettingsProperties

Designação Descrição Valor
enabledState Se as sondas de integridade devem ser feitas em back-ends definidos em backendPools. Os testes de integridade só podem ser desabilitados se houver um único back-end habilitado em um único pool de back-end habilitado. 'Desativado'
'Habilitado'
healthProbeMethod Configura qual método HTTP usar para investigar os back-ends definidos em backendPools. 'OBTER'
'CABEÇA'
intervalInSeconds O número de segundos entre as sondas de saúde. Int
caminho O caminho a ser usado para a sonda de integridade. O padrão é / string
protocolo Esquema de protocolo a utilizar para esta sonda «Http»
'Https'

LoadBalancingSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações de balanceamento de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Designação Descrição Valor
adicionalLatencyMilliseconds A latência adicional em milissegundos para que as sondas caiam no bucket de latência mais baixa Int
amostraTamanho da amostra O número de amostras a serem consideradas para decisões de balanceamento de carga Int
successfulSamplesRequired O número de amostras dentro do período de amostragem que deve ser bem-sucedido Int

Microsoft.Network/frontDoors

Designação Descrição Valor
apiVersion A versão api '2020-05-01'
Localização Localização do recurso. string
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 5
Comprimento máximo = 5
Padrão = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obrigatório)
propriedades Propriedades do balanceador de carga da porta frontal FrontDoorProperties
Etiquetas Tags de recursos Dicionário de nomes e valores de tags. Consulte Tags em modelos
tipo O tipo de recurso 'Microsoft.Network/frontDoors'

RedirectConfiguration

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)
customFragment Fragmente para adicionar ao URL de redirecionamento. Fragmento é a parte do URL que vem depois de #. Não inclua o #. string
customHost Host para redirecionar. Deixe em branco para usar o host de entrada como host de destino. string
customPath O caminho completo para redirecionar. O caminho não pode estar vazio e deve começar com /. Deixe em branco para usar o caminho de entrada como caminho de destino. string
customQueryString O conjunto de cadeias de caracteres de consulta a serem colocadas na URL de redirecionamento. Definir esse valor substituiria qualquer cadeia de caracteres de consulta existente; Deixe em branco para preservar a cadeia de caracteres de consulta de entrada. A cadeia de caracteres de consulta deve estar em <chave>=<valor> formato. O primeiro ? e & serão adicionados automaticamente, portanto, não os inclua na frente, mas separe várias cadeias de caracteres de consulta com &. string
redirectProtocol O protocolo do destino para onde o tráfego é redirecionado 'Somente Http'
'Apenas https'
'MatchRequest'
redirectType O tipo de redirecionamento que a regra usará ao redirecionar o tráfego. 'Encontrado'
'Comovido'
'PermanentRedirect'
'RedirecionamentoTemporário'

Tags de Recursos

Designação Descrição Valor

RouteConfiguration

Designação Descrição Valor
@odata.type Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' para o tipo ForwardingConfiguration. Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' para o tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)

Regra de Roteamento

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da regra de roteamento da porta frontal RoutingRuleProperties

RoutingRuleProperties

Designação Descrição Valor
aceitosProtocolos Esquemas de protocolo correspondentes a esta regra Matriz de cadeia de caracteres contendo qualquer uma das:
«Http»
'Https'
enabledState Se deve ou não permitir o uso desta regra. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
frontendEndpoints Pontos de extremidade de front-end associados a esta regra SubResource[]
patternsToMatch Os padrões de rota da regra. string[]
routeConfiguration Uma referência à configuração de roteamento. RouteConfiguration
rulesEngine Uma referência a uma configuração específica do mecanismo de regras a ser aplicada a essa rota. SubResource
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada regra de roteamento (se aplicável) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

Subrecurso

Designação Descrição Valor
ID ID do recurso. string

Modelos de início rápido

Os modelos de início rápido a seguir implantam esse tipo de recurso.

Modelo Descrição
Adicionar domínio personalizado e certificado personalizado com o Front Door

Implantar no Azure
Este modelo integra e protege um domínio personalizado com o Front Door com um certificado gerenciado pelo cliente
Adicionar domínio personalizado e certificado gerenciado com o Front Door

Implantar no Azure
Este modelo integra e protege um domínio personalizado com o Front Door
Configurar a Afinidade de Sessão para os nomes de host da Front Door

Implantar no Azure
Este modelo atualiza uma porta frontal para habilitar a afinidade de sessão para seu host frontend, enviando tráfego subsequente da mesma sessão de usuário para o mesmo backend.
Control Health Probes para os seus backends no Front Door

Implantar no Azure
Este modelo atualiza a porta frontal para alterar as configurações da sonda de integridade definindo o caminho da sonda e também os intervalos em que as sondas serão enviadas.
Crie um básico da porta da frente

Implantar no Azure
Este modelo cria uma configuração básica de porta frontal com um único back-end.
Criar uma porta frontal com de redirecionamento HTTP para HTTPS

Implantar no Azure
Este modelo cria uma configuração de porta frontal para redirecionamento HTTP para HTTPS.
Crie uma porta frontal com vários backends e pools de back-end

Implantar no Azure
Este modelo cria uma Front Door com balanceamento de carga configurado para vários back-ends em um pool de back-end e também entre pools de back-end com base no caminho da URL.
Criar a Porta da Frente do Azure em frente ao de Gerenciamento de API do Azure

Implantar no Azure
Este exemplo demonstra como usar o Azure Front Door como um balanceador de carga global na frente do Gerenciamento de API do Azure.
Criar Front Door com Active-Standby de configuração

Implantar no Azure
Este modelo cria uma porta frontal que demonstra o roteamento baseado em prioridade para Active-Standby topologia de aplicativo.
Criar Front Door com cache ativado para determinadas rotas

Implantar no Azure
Este modelo cria uma porta frontal com cache habilitado para a configuração de roteamento definida, armazenando em cache todos os ativos estáticos para sua carga de trabalho.

Definição de recursos Terraform (provedor AzAPI)

O tipo de recurso frontDoors pode ser implantado com operações que visam:

  • Grupos de recursos

Para obter uma lista de propriedades alteradas em cada versão da API, consulte log de alterações.

Formato do recurso

Para criar um recurso Microsoft.Network/frontDoors, adicione o seguinte Terraform ao seu modelo.

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

Objetos RouteConfiguration

Defina a propriedade @odata.type para especificar o 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 propriedade

Back-end

Designação Descrição Valor
Endereço Localização do back-end (endereço IP ou FQDN) string
backendHostHeader O valor a ser usado como o cabeçalho do host enviado para o back-end. Se estiver em branco ou não especificado, o padrão será para o host de entrada. string
enabledState Se o uso desse back-end deve ser habilitado. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
Porta http O número da porta TCP HTTP. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
Porta https: O número da porta TCP HTTPS. Deve ter entre 1 e 65535. Int

Restrições:
Valor mínimo = 1
Valor máximo = 65535
prioridade Prioridade a ser usada para balanceamento de carga. Prioridades mais altas não serão usadas para balanceamento de carga se qualquer back-end de prioridade mais baixa estiver íntegro. Int

Restrições:
Valor mínimo = 1
Valor máximo = 5
privateLinkAlias O alias do recurso Private Link. Preencher este campo opcional indica que este back-end é 'Privado' string
privateLinkApprovalMessage Uma mensagem personalizada a ser incluída na solicitação de aprovação para se conectar ao Link Privado string
privateLinkLocalização A localização do recurso Private Link. Necessário somente se 'privateLinkResourceId' estiver preenchido string
privateLinkResourceId A ID do recurso do link privado. Preencher este campo opcional indica que este back-end é 'Privado' string
peso Peso deste ponto final para fins de balanceamento de carga. Int

Restrições:
Valor mínimo = 1
Valor máximo = 1000

BackendPool

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da piscina de back-end da porta da frente BackendPoolProperties

BackendPoolProperties

Designação Descrição Valor
Back-ends O conjunto de backends para este pool Backend[]
healthProbeSettings Configurações da sonda de integridade L7 para um pool de back-end SubResource
loadBalancingSettings Configurações de balanceamento de carga para um pool de back-end SubResource

BackendPoolsSettings

Designação Descrição Valor
enforceCertificateNameCheck Se a verificação do nome do certificado deve ser imposta em solicitações HTTPS a todos os pools de back-end. Nenhum efeito em solicitações não-HTTPS. 'Desativado'
'Habilitado'
sendRecvTimeoutSeconds Enviar e receber o tempo limite no encaminhamento da solicitação para o back-end. Quando o tempo limite é atingido, a solicitação falha e retorna. Int

Restrições:
Valor mínimo = 16

CacheConfiguration

Designação Descrição Valor
cacheDuração A duração durante a qual o conteúdo precisa ser armazenado em cache. O formato permitido está no formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requer que o valor não seja superior a um ano string
dynamicCompression Se a compactação dinâmica deve ser usada para conteúdo armazenado em cache 'Desativado'
'Habilitado'
queryParameters parâmetros de consulta para incluir ou excluir (separados por vírgula). string
queryParameterStripDirective Tratamento de termos de consulta de URL ao formar a chave de cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

EncaminhamentoConfiguração

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obrigatório)
backendPool Uma referência ao BackendPool para o qual esta regra é encaminhada. SubResource
cacheConfiguração A configuração de cache associada a esta regra. CacheConfiguration
customForwardingPath Um caminho personalizado usado para reescrever caminhos de recursos correspondentes a esta regra. Deixe vazio para usar o caminho de entrada. string
Protocolo de encaminhamento Protocolo que esta regra usará ao encaminhar tráfego para back-ends. 'Somente Http'
'Apenas https'
'MatchRequest'

FrontDoorPropriedades

Designação Descrição Valor
backendPools Pools de back-end disponíveis para regras de roteamento. BackendPool[]
backendPoolsSettings Configurações para todos os backendPools BackendPoolsSettings
enabledState Estado operacional do balanceador de carga Front Door. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
friendlyNome Um nome amigável para o frontDoor string
frontendEndpoints Frontend endpoints disponíveis para regras de roteamento. FrontendEndpoint[]
healthProbeSettings Configurações da sonda de integridade associadas a essa instância do Front Door. HealthProbeSettingsModel[]
loadBalancingSettings Configurações de balanceamento de carga associadas a essa instância do Front Door. LoadBalancingSettingsModel[]
roteamentoRegras Regras de roteamento associadas a esta porta da frente. RoutingRule[]

FrontendEndpoint

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades do ponto de extremidade Frontend FrontendEndpointProperties

FrontendEndpointProperties

Designação Descrição Valor
Nome do host O nome do host do frontendEndpoint. Deve ser um nome de domínio. string
sessionAffinityEnabledState Se deve permitir afinidade de sessão neste anfitrião. As opções válidas são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
sessãoAfinidadeTtlSegundos NÃO UTILIZADO. Este campo será ignorado. O TTL a ser usado em segundos para afinidade de sessão, se aplicável. Int
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada host (se aplicável) FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

HealthProbeSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações da sonda de integridade HealthProbeSettingsProperties

HealthProbeSettingsProperties

Designação Descrição Valor
enabledState Se as sondas de integridade devem ser feitas em back-ends definidos em backendPools. Os testes de integridade só podem ser desabilitados se houver um único back-end habilitado em um único pool de back-end habilitado. 'Desativado'
'Habilitado'
healthProbeMethod Configura qual método HTTP usar para investigar os back-ends definidos em backendPools. 'OBTER'
'CABEÇA'
intervalInSeconds O número de segundos entre as sondas de saúde. Int
caminho O caminho a ser usado para a sonda de integridade. O padrão é / string
protocolo Esquema de protocolo a utilizar para esta sonda «Http»
'Https'

LoadBalancingSettingsModel

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades das configurações de balanceamento de carga LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Designação Descrição Valor
adicionalLatencyMilliseconds A latência adicional em milissegundos para que as sondas caiam no bucket de latência mais baixa Int
amostraTamanho da amostra O número de amostras a serem consideradas para decisões de balanceamento de carga Int
successfulSamplesRequired O número de amostras dentro do período de amostragem que deve ser bem-sucedido Int

Microsoft.Network/frontDoors

Designação Descrição Valor
Localização Localização do recurso. string
Designação O nome do recurso string

Restrições:
Comprimento mínimo = 5
Comprimento máximo = 5
Padrão = ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$ (obrigatório)
propriedades Propriedades do balanceador de carga da porta frontal FrontDoorProperties
Etiquetas Tags de recursos Dicionário de nomes e valores de tags.
tipo O tipo de recurso "Microsoft.Network/frontDoors@2020-05-01"

RedirectConfiguration

Designação Descrição Valor
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)
customFragment Fragmente para adicionar ao URL de redirecionamento. Fragmento é a parte do URL que vem depois de #. Não inclua o #. string
customHost Host para redirecionar. Deixe em branco para usar o host de entrada como host de destino. string
customPath O caminho completo para redirecionar. O caminho não pode estar vazio e deve começar com /. Deixe em branco para usar o caminho de entrada como caminho de destino. string
customQueryString O conjunto de cadeias de caracteres de consulta a serem colocadas na URL de redirecionamento. Definir esse valor substituiria qualquer cadeia de caracteres de consulta existente; Deixe em branco para preservar a cadeia de caracteres de consulta de entrada. A cadeia de caracteres de consulta deve estar em <chave>=<valor> formato. O primeiro ? e & serão adicionados automaticamente, portanto, não os inclua na frente, mas separe várias cadeias de caracteres de consulta com &. string
redirectProtocol O protocolo do destino para onde o tráfego é redirecionado 'Somente Http'
'Apenas https'
'MatchRequest'
redirectType O tipo de redirecionamento que a regra usará ao redirecionar o tráfego. 'Encontrado'
'Comovido'
'PermanentRedirect'
'RedirecionamentoTemporário'

Tags de Recursos

Designação Descrição Valor

RouteConfiguration

Designação Descrição Valor
@odata.type Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' para o tipo ForwardingConfiguration. Defina como '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' para o tipo RedirectConfiguration. '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration'
'#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obrigatório)

Regra de Roteamento

Designação Descrição Valor
ID ID do recurso. string
Designação Nome do recurso. string
propriedades Propriedades da regra de roteamento da porta frontal RoutingRuleProperties

RoutingRuleProperties

Designação Descrição Valor
aceitosProtocolos Esquemas de protocolo correspondentes a esta regra Matriz de cadeia de caracteres contendo qualquer uma das:
«Http»
'Https'
enabledState Se deve ou não permitir o uso desta regra. Os valores permitidos são 'Ativado' ou 'Desativado' 'Desativado'
'Habilitado'
frontendEndpoints Pontos de extremidade de front-end associados a esta regra SubResource[]
patternsToMatch Os padrões de rota da regra. string[]
routeConfiguration Uma referência à configuração de roteamento. RouteConfiguration
rulesEngine Uma referência a uma configuração específica do mecanismo de regras a ser aplicada a essa rota. SubResource
webApplicationFirewallPolicyLink Define a política do Web Application Firewall para cada regra de roteamento (se aplicável) RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink
Designação Descrição Valor
ID ID do recurso. string

Subrecurso

Designação Descrição Valor
ID ID do recurso. string