Share via


Frontdoor di Microsoft.Network

Definizione di risorsa Bicep

Il tipo di risorsa frontDoors può essere distribuito in:

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.Network/frontDoors, aggiungere il modello Bicep seguente.

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

Oggetti RouteConfiguration

Impostare la proprietà @odata.type per specificare il tipo di oggetto.

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, usare:

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

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, usare:

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

Valori delle proprietà

frontDoors

Nome Descrizione valore
name Nome della risorsa stringa (obbligatoria)

Limite di caratteri: 5-64

Caratteri validi:
Caratteri alfanumerici e trattini.

Deve iniziare e terminare con un carattere alfanumerico.

Il nome della risorsa deve essere univoco in Azure.
posizione Percorso della risorsa. string
tags Tag di risorse. Dizionario dei nomi e dei valori dei tag. Vedere Tag nei modelli
properties Proprietà dell'Load Balancer frontdoor FrontDoorProperties

FrontDoorProperties

Nome Descrizione Valore
back-endPools Pool back-end disponibili per le regole di routing. Back-endPool[]
backpoolsSettings Impostazioni per tutti i back-endPool BackPoolsSettings
enabledState Stato operativo del bilanciamento del carico Frontdoor. I valori consentiti sono "Enabled" o "Disabled" 'Disabilitato'
'Enabled'
friendlyName Nome descrittivo per la frontdoor string
frontndEndpoints Endpoint front-end disponibili per le regole di routing. FrontndEndpoint[]
healthProbeSettings Impostazioni del probe di integrità associate a questa istanza di frontdoor. HealthProbeSettingsModel[]
loadBalancingSettings Impostazioni del bilanciamento del carico associate a questa istanza di frontdoor. LoadBalancingSettingsModel[]
routingRules Regole di routing associate a questa frontdoor. RoutingRule[]

BackendPool

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà del pool back-end frontdoor Back-endPoolProperties

Back-endPoolProperties

Nome Descrizione Valore
Backend Set di back-end per questo pool Back-end[]
healthProbeSettings Impostazioni del probe di integrità L7 per un pool back-end SottoResource
loadBalancingSettings Impostazioni di bilanciamento del carico per un pool back-end Sottorisorsa

Back-end

Nome Descrizione Valore
address Posizione del back-end (indirizzo IP o FQDN) string
backendHostHeader Valore da utilizzare come intestazione host inviato al back-end. Se vuoto o non specificato, per impostazione predefinita viene predefinito l'host in ingresso. string
enabledState Se si desidera abilitare l'utilizzo di questo back-end. I valori consentiti sono 'Enabled' o 'Disabled' 'Disabilitato'
'Enabled'
httpPort Il numero di porta TCP di HTTP. Deve essere compreso tra 1 e 65535. INT
httpsPort Il numero di porta TCP HTTPS. Deve essere compreso tra 1 e 65535. INT
priority Priorità da utilizzare per il bilanciamento del carico. Le priorità più elevate non verranno usate per il bilanciamento del carico se un back-end con priorità inferiore è integro. INT
privateLinkAlias Alias della risorsa collegamento privato. Il popolamento di questo campo facoltativo indica che il back-end è "Privato" string
privateLinkApprovalMessage Messaggio personalizzato da includere nella richiesta di approvazione per la connessione al collegamento privato string
privateLinkLocation Posizione della risorsa collegamento privato. Obbligatorio solo se 'privateLinkResourceId' è popolato string
privateLinkResourceId ID risorsa della risorsa collegamento privato. Il popolamento di questo campo facoltativo indica che il back-end è "Privato" string
peso Peso di questo endpoint per scopi di bilanciamento del carico. INT

Sottorisorsa

Nome Descrizione Valore
id ID risorsa. string

BackendPoolsSettings

Nome Descrizione Valore
enforceCertificateNameCheck Indica se applicare il controllo del nome del certificato nelle richieste HTTPS a tutti i pool back-end. Nessun effetto sulle richieste non HTTPS. 'Disabilitato'
'Enabled'
sendRecvTimeoutSeconds Inviare e ricevere timeout durante l'inoltro della richiesta al back-end. Quando viene raggiunto il timeout, la richiesta ha esito negativo e restituisce. INT

Front-endEndpoint

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà dell'endpoint front-end FrontndEndpointProperties

FrontndEndpointProperties

Nome Descrizione Valore
hostName Nome host del frontendEndpoint. Deve essere un nome di dominio. string
sessionAffinityEnabledState Indica se consentire l'affinità di sessione in questo host. Le opzioni valide sono 'Enabled' o 'Disabled' 'Disabilitato'
'Enabled'
sessionAffinityTtlSeconds INUTILIZZATI. Questo campo verrà ignorato. TTL in secondi da usare per l'affinità di sessione, se applicabile. INT
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni host (se applicabile) FrontndEndpointUpdateParametersWebApplicationFirewa...

FrontndEndpointUpdateParametersWebApplicationFirewa...

Nome Descrizione Valore
id ID risorsa. string

HealthProbeSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni del probe di integrità HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nome Descrizione Valore
enabledState Se abilitare i probe di integrità da eseguire su back-end definiti in back-endPools. I probe di integrità possono essere disabilitati solo se è presente un singolo back-end abilitato nel pool back-end abilitato. 'Disabilitato'
'Enabled'
healthProbeMethod Configura il metodo HTTP da usare per eseguire il probe dei back-end definiti in back-endPools. 'GET'
'HEAD'
intervalInSeconds Il numero di secondi tra probe di integrità. INT
path Il percorso per usare il probe di integrità. Il valore predefinito è / string
protocol Schema di protocollo da usare per questo probe 'Http'
'Https'

LoadBalancingSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni di bilanciamento del carico LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nome Descrizione Valore
additionalLatencyMilliseconds La latenza aggiuntiva in millisecondi per i probe che rientrano nel bucket di latenza più basso INT
sampleSize Numero di esempi da considerare per le decisioni di bilanciamento del carico INT
successfulSamplesRequired Numero di esempi entro il periodo di esempio che deve avere esito positivo INT

RoutingRule

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà della regola di routing frontdoor RoutingRuleProperties

RoutingRuleProperties

Nome Descrizione Valore
acceptedProtocols Schemi di protocollo da trovare per questa regola Matrice di stringhe contenente uno qualsiasi di:
'Http'
'Https'
enabledState Indica se abilitare l'uso di questa regola. I valori consentiti sono "Enabled" o "Disabled" 'Disabilitato'
'Enabled'
frontndEndpoints Endpoint front-end associati a questa regola SubResource[]
patternsToMatch Modelli di route della regola. string[]
routeConfiguration Riferimento alla configurazione del routing. RouteConfiguration
rulesEngine Riferimento a una specifica configurazione del motore regole da applicare a questa route. Sottorisorsa
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni regola di routing (se applicabile) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nome Descrizione Valore
@odata.type Impostare il tipo di oggetto #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obbligatorio)

ForwardingConfiguration

Nome Descrizione Valore
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obbligatorio)
backendPool Riferimento a BackendPool a cui viene instradata questa regola. Sottorisorsa
cacheConfiguration Configurazione di memorizzazione nella cache associata a questa regola. CacheConfiguration
customForwardingPath Percorso personalizzato utilizzato per riscrivere i percorsi delle risorse corrispondenti a questa regola. Lasciare vuoto per usare il percorso di ingresso. string
forwardingProtocol Protocollo che verrà usato per l'inoltro del traffico ai back-end. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Nome Descrizione Valore
Cacheduration Durata per cui il contenuto deve essere memorizzato nella cache. Il formato consentito è in formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP richiede che il valore non sia più di un anno string
dynamicCompression Indica se usare la compressione dinamica per il contenuto memorizzato nella cache 'Disabilitato'
'Enabled'
queryParameters parametri di query da includere o escludere (delimitati da virgole). string
queryParameterStripDirective Trattamento dei termini di query URL quando si forma la chiave della cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Nome Descrizione Valore
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obbligatorio)
customFragment Frammento da aggiungere all'URL di reindirizzamento. Frammento è la parte dell'URL successivo a #. Non includere il file #. string
customHost Host da reindirizzare. Lasciare vuoto per usare l'host in ingresso come host di destinazione. string
customPath Percorso completo da reindirizzare. Il percorso non può essere vuoto e deve iniziare con /. Lasciare vuoto per usare il percorso in ingresso come percorso di destinazione. string
customQueryString Set di stringhe di query da inserire nell'URL di reindirizzamento. L'impostazione di questo valore sostituirà qualsiasi stringa di query esistente; lasciare vuoto per mantenere la stringa di query in ingresso. La stringa di query deve essere in formato {key}={value}. Il primo ? e & verranno aggiunti automaticamente in modo da non includerli in primo piano, ma separare più stringhe di query con &. string
redirectProtocol Protocollo della destinazione a cui viene reindirizzato il traffico 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType Tipo di reindirizzamento che verrà usata dalla regola per il reindirizzamento del traffico. 'Trovato'
'Spostato'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nome Descrizione Valore
id ID risorsa. string

Modelli di avvio rapido

I modelli di avvio rapido seguenti distribuiscono questo tipo di risorsa.

Modello Descrizione
Creare frontdoor di Azure davanti ad Azure Gestione API

Distribuisci in Azure
Questo esempio illustra come usare Frontdoor di Azure come servizio di bilanciamento del carico globale davanti ad Azure Gestione API.
Creare una frontodoor di base

Distribuisci in Azure
Questo modello crea una configurazione frontdoor di base con un singolo back-end.
Creare una frontdoor con la memorizzazione nella cache abilitata per determinati route

Distribuisci in Azure
Questo modello crea una frontdoor con memorizzazione nella cache abilitata per la configurazione di routing definita, memorizzando nella cache tutti gli asset statici per il carico di lavoro.
Creare una frontdoor con più back-end e pool back-end

Distribuisci in Azure
Questo modello crea un frontdoor con bilanciamento del carico configurato per più back-end in un pool back-end e anche tra pool back-end in base al percorso URL.
Creare una frontdoor con reindirizzamento DA HTTP a HTTPS

Distribuisci in Azure
Questo modello crea una configurazione di Frontdoor per il reindirizzamento DA HTTP a HTTPS.
Aggiungere un dominio personalizzato e un certificato gestito con Frontdoor

Distribuisci in Azure
Questo modello esegue l'onboarding e protegge un dominio personalizzato con Frontdoor
Aggiungere un dominio personalizzato e un certificato personalizzato con Frontdoor

Distribuisci in Azure
Questo modello esegue l'onboarding e protegge un dominio personalizzato con Frontdoor con un certificato gestito dal cliente
Controllare probe di integrità per il back-end in Frontdoor

Distribuisci in Azure
Questo modello aggiorna frontdoor per modificare le impostazioni del probe di integrità impostando il percorso del probe e anche gli intervalli in cui verranno inviati i probe.
Creare Frontdoor con Active-Standby configurazione

Distribuisci in Azure
Questo modello crea una frontdoor che illustra il routing basato sulla priorità per Active-Standby topologia dell'applicazione.
Configurare l'affinità di sessione per i nomi host di Frontdoor

Distribuisci in Azure
Questo modello aggiorna un frontdoor per abilitare l'affinità di sessione per l'host front-end, inviando così il traffico successivo dalla stessa sessione utente allo stesso back-end.

Definizione di risorsa del modello di Resource Manager

Il tipo di risorsa frontdoor può essere distribuito in:

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere Log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.Network/frontDoors, aggiungere il codice JSON seguente al modello.

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

Oggetti RouteConfiguration

Impostare la proprietà @odata.type per specificare il tipo di oggetto.

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, usare:

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

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, usare:

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

Valori delle proprietà

frontDoors

Nome Descrizione Valore
tipo Tipo di risorsa 'Microsoft.Network/frontDoors'
apiVersion Versione dell'API della risorsa '2021-06-01'
name Nome della risorsa stringa (obbligatorio)

Limite di caratteri: 5-64

Caratteri validi:
Caratteri alfanumerici e trattini.

Deve iniziare e terminare con un carattere alfanumerico.

Il nome della risorsa deve essere univoco in Azure.
posizione Percorso della risorsa. string
tags Tag delle risorse. Dizionario di nomi e valori di tag. Vedere Tag nei modelli
properties Proprietà del Load Balancer frontdoor FrontDoorProperties

FrontDoorProperties

Nome Descrizione Valore
backendPools Pool back-end disponibili per le regole di routing. BackendPool[]
backendPoolsSettings Impostazioni per tutti i pool back-end BackendPoolsSettings
enabledState Stato operativo del bilanciamento del carico Frontdoor. I valori consentiti sono 'Enabled' o 'Disabled' 'Disabilitato'
'Enabled'
friendlyName Nome descrittivo per frontDoor string
frontendEndpoints Endpoint front-end disponibili per le regole di routing. FrontndEndpoint[]
healthProbeSettings Impostazioni del probe di integrità associate a questa istanza di frontdoor. HealthProbeSettingsModel[]
loadBalancingSettings Impostazioni del bilanciamento del carico associate a questa istanza di frontdoor. LoadBalancingSettingsModel[]
routingRules Regole di routing associate a questa frontdoor. RoutingRule[]

BackendPool

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà del pool back-end frontdoor Back-endPoolProperties

Back-endPoolProperties

Nome Descrizione Valore
Backend Set di back-end per questo pool Back-end[]
healthProbeSettings Impostazioni del probe di integrità L7 per un pool back-end SottoResource
loadBalancingSettings Impostazioni di bilanciamento del carico per un pool back-end SottoResource

Back-end

Nome Descrizione Valore
address Posizione del back-end (indirizzo IP o FQDN) string
backHostHeader Valore da utilizzare come intestazione host inviato al back-end. Se vuoto o non specificato, questo valore predefinito viene impostato sull'host in ingresso. string
enabledState Se si desidera abilitare l'utilizzo di questo back-end. I valori consentiti sono "Enabled" o "Disabled" 'Disabilitato'
'Enabled'
httpPort Il numero di porta TCP di HTTP. Deve essere compreso tra 1 e 65535. INT
httpsPort Il numero di porta TCP HTTPS. Deve essere compreso tra 1 e 65535. INT
priority Priorità da utilizzare per il bilanciamento del carico. Le priorità più elevate non verranno usate per il bilanciamento del carico se un back-end con priorità inferiore è integro. INT
privateLinkAlias Alias della risorsa collegamento privato. Popolamento di questo campo facoltativo indica che questo back-end è "Privato" string
privateLinkApprovalMessage Messaggio personalizzato da includere nella richiesta di approvazione per connettersi al collegamento privato string
privateLinkLocation Posizione della risorsa collegamento privato. Obbligatorio solo se 'privateLinkResourceId' è popolato string
privateLinkResourceId ID risorsa della risorsa collegamento privato. Popolamento di questo campo facoltativo indica che questo back-end è "Privato" string
peso Peso di questo endpoint per scopi di bilanciamento del carico. INT

SottoResource

Nome Descrizione Valore
id ID risorsa. string

BackPoolsSettings

Nome Descrizione Valore
enforceCertificateNameCheck Se applicare il controllo del nome del certificato sulle richieste HTTPS a tutti i pool back-end. Nessun effetto sulle richieste non HTTPS. 'Disabilitato'
'Enabled'
sendRecvTimeoutSeconds Inviare e ricevere timeout sull'inoltro della richiesta al back-end. Quando viene raggiunto il timeout, la richiesta ha esito negativo e restituisce. INT

Front-endEndpoint

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà dell'endpoint front-end FrontndEndpointProperties

FrontndEndpointProperties

Nome Descrizione Valore
hostName Nome host del frontendEndpoint. Deve essere un nome di dominio. string
sessionAffinityEnabledState Indica se consentire l'affinità di sessione in questo host. Le opzioni valide sono 'Enabled' o 'Disabled' 'Disabilitato'
'Enabled'
sessionAffinityTtlSeconds INUTILIZZATI. Questo campo verrà ignorato. TTL in secondi da usare per l'affinità di sessione, se applicabile. INT
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni host (se applicabile) FrontendEndpointUpdateParametersWebApplicationFirewa...

FrontendEndpointUpdateParametersWebApplicationFirewa...

Nome Descrizione Valore
id ID risorsa. string

HealthProbeSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni del probe di integrità HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nome Descrizione Valore
enabledState Indica se abilitare i probe di integrità per i back-end definiti in backendPools. I probe di integrità possono essere disabilitati solo se è presente un singolo back-end abilitato in un singolo pool back-end abilitato. 'Disabilitato'
'Enabled'
healthProbeMethod Configura il metodo HTTP da usare per eseguire il probe dei back-end definiti in backendPools. 'GET'
'HEAD'
intervalInSeconds Il numero di secondi tra probe di integrità. INT
path Il percorso per usare il probe di integrità. Il valore predefinito è / string
protocol Schema del protocollo da usare per questo probe 'Http'
'Https'

LoadBalancingSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni di bilanciamento del carico LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nome Descrizione Valore
additionalLatencyMilliseconds Latenza aggiuntiva in millisecondi per i probe che rientrano nel bucket di latenza più basso INT
sampleSize Numero di campioni da considerare per le decisioni di bilanciamento del carico INT
successfulSamplesRequired Numero di campioni entro il periodo di campionamento che deve avere esito positivo INT

RoutingRule

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà della regola di routing di Frontdoor RoutingRuleProperties

RoutingRuleProperties

Nome Descrizione Valore
acceptedProtocols Schemi di protocollo che corrispondono a questa regola Matrice di stringhe contenente uno dei seguenti elementi:
'Http'
'Https'
enabledState Indica se abilitare l'uso di questa regola. I valori consentiti sono 'Enabled' o 'Disabled' 'Disabilitato'
'Enabled'
frontendEndpoints Endpoint front-end associati a questa regola SubResource[]
patternsToMatch Modelli di route della regola. string[]
routeConfiguration Riferimento alla configurazione del routing. RouteConfiguration
rulesEngine Riferimento a una specifica configurazione del motore regole da applicare a questa route. Sottorisorsa
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni regola di routing (se applicabile) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nome Descrizione Valore
@odata.type Impostare il tipo di oggetto #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obbligatorio)

ForwardingConfiguration

Nome Descrizione Valore
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration' (obbligatorio)
backendPool Riferimento a BackendPool a cui viene instradata questa regola. Sottorisorsa
cacheConfiguration Configurazione di memorizzazione nella cache associata a questa regola. CacheConfiguration
customForwardingPath Percorso personalizzato utilizzato per riscrivere i percorsi delle risorse corrispondenti a questa regola. Lasciare vuoto per usare il percorso di ingresso. string
forwardingProtocol Protocollo che verrà usato per l'inoltro del traffico ai back-end. 'HttpOnly'
'HttpsOnly'
'MatchRequest'

CacheConfiguration

Nome Descrizione Valore
Cacheduration Durata per cui il contenuto deve essere memorizzato nella cache. Il formato consentito è in formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP richiede che il valore non sia più di un anno string
dynamicCompression Indica se usare la compressione dinamica per il contenuto memorizzato nella cache 'Disabilitato'
'Enabled'
queryParameters parametri di query da includere o escludere (delimitati da virgole). string
queryParameterStripDirective Trattamento dei termini di query URL quando si forma la chiave della cache. 'StripAll'
'StripAllExcept'
'StripNone'
'StripOnly'

RedirectConfiguration

Nome Descrizione Valore
@odata.type '#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration' (obbligatorio)
customFragment Frammento da aggiungere all'URL di reindirizzamento. Frammento è la parte dell'URL successivo a #. Non includere il file #. string
customHost Host da reindirizzare. Lasciare vuoto per usare l'host in ingresso come host di destinazione. string
customPath Percorso completo da reindirizzare. Il percorso non può essere vuoto e deve iniziare con /. Lasciare vuoto per usare il percorso in ingresso come percorso di destinazione. string
customQueryString Set di stringhe di query da inserire nell'URL di reindirizzamento. L'impostazione di questo valore sostituirà qualsiasi stringa di query esistente; lasciare vuoto per mantenere la stringa di query in ingresso. La stringa di query deve essere in formato {key}={value}. Il primo ? e & verranno aggiunti automaticamente in modo da non includerli in primo piano, ma separare più stringhe di query con &. string
redirectProtocol Protocollo della destinazione a cui viene reindirizzato il traffico 'HttpOnly'
'HttpsOnly'
'MatchRequest'
redirectType Tipo di reindirizzamento che verrà usata dalla regola per il reindirizzamento del traffico. 'Trovato'
'Spostato'
'PermanentRedirect'
'TemporaryRedirect'

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nome Descrizione Valore
id ID risorsa. string

Modelli di avvio rapido

I modelli di avvio rapido seguenti distribuiscono questo tipo di risorsa.

Modello Descrizione
Creare frontdoor di Azure davanti ad Azure Gestione API

Distribuisci in Azure
Questo esempio illustra come usare Frontdoor di Azure come servizio di bilanciamento del carico globale davanti ad Azure Gestione API.
Creare una frontodoor di base

Distribuisci in Azure
Questo modello crea una configurazione frontdoor di base con un singolo back-end.
Creare una frontdoor con la memorizzazione nella cache abilitata per determinati route

Distribuisci in Azure
Questo modello crea una frontdoor con memorizzazione nella cache abilitata per la configurazione di routing definita, memorizzando nella cache tutti gli asset statici per il carico di lavoro.
Creare una frontdoor con più back-end e pool back-end

Distribuisci in Azure
Questo modello crea un frontdoor con bilanciamento del carico configurato per più back-end in un pool back-end e anche tra pool back-end in base al percorso URL.
Creare una frontdoor con reindirizzamento DA HTTP a HTTPS

Distribuisci in Azure
Questo modello crea una configurazione di Frontdoor per il reindirizzamento DA HTTP a HTTPS.
Aggiungere un dominio personalizzato e un certificato gestito con Frontdoor

Distribuisci in Azure
Questo modello esegue l'onboarding e protegge un dominio personalizzato con Frontdoor
Aggiungere un dominio personalizzato e un certificato personalizzato con Frontdoor

Distribuisci in Azure
Questo modello esegue l'onboarding e protegge un dominio personalizzato con Frontdoor con un certificato gestito dal cliente
Controllare probe di integrità per il back-end in Frontdoor

Distribuisci in Azure
Questo modello aggiorna frontdoor per modificare le impostazioni del probe di integrità impostando il percorso del probe e anche gli intervalli in cui verranno inviati i probe.
Creare Frontdoor con Active-Standby configurazione

Distribuisci in Azure
Questo modello crea una frontdoor che illustra il routing basato sulla priorità per Active-Standby topologia dell'applicazione.
Configurare l'affinità di sessione per i nomi host di Frontdoor

Distribuisci in Azure
Questo modello aggiorna un frontdoor per abilitare l'affinità di sessione per l'host front-end, inviando così il traffico successivo dalla stessa sessione utente allo stesso back-end.

Definizione della risorsa Terraform (provider AzAPI)

Il tipo di risorsa frontdoor può essere distribuito in:

  • Gruppi di risorse

Per un elenco delle proprietà modificate in ogni versione dell'API, vedere Log delle modifiche.

Formato di risorsa

Per creare una risorsa Microsoft.Network/frontDoors, aggiungere il codice Terraform seguente al modello.

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

Oggetti RouteConfiguration

Impostare la proprietà @odata.type per specificare il tipo di oggetto.

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration, usare:

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

Per #Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration, usare:

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

Valori delle proprietà

frontDoors

Nome Descrizione Valore
tipo Tipo di risorsa "Microsoft.Network/frontDoors@2021-06-01"
name Nome della risorsa stringa (obbligatorio)

Limite di caratteri: 5-64

Caratteri validi:
Caratteri alfanumerici e trattini.

Deve iniziare e terminare con un carattere alfanumerico.

Il nome della risorsa deve essere univoco in Azure.
posizione Percorso della risorsa. string
parent_id Per eseguire la distribuzione in un gruppo di risorse, usare l'ID del gruppo di risorse. stringa (obbligatorio)
tags Tag delle risorse. Dizionario di nomi e valori di tag.
properties Proprietà del Load Balancer frontdoor FrontDoorProperties

FrontDoorProperties

Nome Descrizione Valore
backendPools Pool back-end disponibili per le regole di routing. BackendPool[]
backendPoolsSettings Impostazioni per tutti i pool back-end BackendPoolsSettings
enabledState Stato operativo del bilanciamento del carico Frontdoor. I valori consentiti sono 'Enabled' o 'Disabled' "Disabilitato"
"Abilitato"
friendlyName Nome descrittivo per frontDoor string
frontendEndpoints Endpoint front-end disponibili per le regole di routing. FrontndEndpoint[]
healthProbeSettings Impostazioni del probe di integrità associate a questa istanza di frontdoor. HealthProbeSettingsModel[]
loadBalancingSettings Impostazioni del bilanciamento del carico associate a questa istanza di frontdoor. LoadBalancingSettingsModel[]
routingRules Regole di routing associate a questa frontdoor. RoutingRule[]

BackendPool

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà del pool back-end frontdoor BackendPoolProperties

BackendPoolProperties

Nome Descrizione Valore
Backend Set di back-end per questo pool Back-end[]
healthProbeSettings Impostazioni del probe di integrità L7 per un pool back-end Sottorisorsa
loadBalancingSettings Impostazioni di bilanciamento del carico per un pool back-end Sottorisorsa

Back-end

Nome Descrizione Valore
address Posizione del back-end (indirizzo IP o FQDN) string
backendHostHeader Valore da utilizzare come intestazione host inviato al back-end. Se vuoto o non specificato, per impostazione predefinita viene predefinito l'host in ingresso. string
enabledState Se si desidera abilitare l'utilizzo di questo back-end. I valori consentiti sono 'Enabled' o 'Disabled' "Disabilitato"
"Abilitato"
httpPort Il numero di porta TCP di HTTP. Deve essere compreso tra 1 e 65535. INT
httpsPort Il numero di porta TCP HTTPS. Deve essere compreso tra 1 e 65535. INT
priority Priorità da utilizzare per il bilanciamento del carico. Le priorità più elevate non verranno usate per il bilanciamento del carico se un back-end con priorità inferiore è integro. INT
privateLinkAlias Alias della risorsa collegamento privato. Il popolamento di questo campo facoltativo indica che il back-end è "Privato" string
privateLinkApprovalMessage Messaggio personalizzato da includere nella richiesta di approvazione per connettersi al collegamento privato string
privateLinkLocation Posizione della risorsa collegamento privato. Obbligatorio solo se 'privateLinkResourceId' è popolato string
privateLinkResourceId ID risorsa della risorsa collegamento privato. Popolamento di questo campo facoltativo indica che questo back-end è "Privato" string
peso Peso di questo endpoint per scopi di bilanciamento del carico. INT

SottoResource

Nome Descrizione Valore
id ID risorsa. string

BackPoolsSettings

Nome Descrizione Valore
enforceCertificateNameCheck Se applicare il controllo del nome del certificato sulle richieste HTTPS a tutti i pool back-end. Nessun effetto sulle richieste non HTTPS. "Disabilitato"
"Abilitato"
sendRecvTimeoutSeconds Inviare e ricevere timeout sull'inoltro della richiesta al back-end. Quando viene raggiunto il timeout, la richiesta ha esito negativo e restituisce. INT

FrontndEndpoint

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà dell'endpoint front-end FrontndEndpointProperties

FrontndEndpointProperties

Nome Descrizione Valore
hostName Nome host del frontendEndpoint. Deve essere un nome di dominio. string
sessionAffinityEnabledState Indica se consentire l'affinità di sessione in questo host. Le opzioni valide sono "Abilitate" o "Disabilitate" "Disabilitato"
"Abilitato"
sessionAffinityTtlSeconds INUTILIZZATI. Questo campo verrà ignorato. TTL in secondi da usare per l'affinità di sessione, se applicabile. INT
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni host (se applicabile) FrontndEndpointUpdateParametersWebApplicationFirewa...

FrontndEndpointUpdateParametersWebApplicationFirewa...

Nome Descrizione Valore
id ID risorsa. string

HealthProbeSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni del probe di integrità HealthProbeSettingsProperties

HealthProbeSettingsProperties

Nome Descrizione Valore
enabledState Se abilitare i probe di integrità da eseguire su back-end definiti in back-endPools. I probe di integrità possono essere disabilitati solo se è presente un singolo back-end abilitato nel pool back-end abilitato. "Disabilitato"
"Abilitato"
healthProbeMethod Configura il metodo HTTP da usare per eseguire il probe dei back-end definiti in back-endPools. "GET"
"HEAD"
intervalInSeconds Il numero di secondi tra probe di integrità. INT
path Il percorso per usare il probe di integrità. Il valore predefinito è / string
protocol Schema del protocollo da usare per questo probe "Http"
"Https"

LoadBalancingSettingsModel

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà delle impostazioni di bilanciamento del carico LoadBalancingSettingsProperties

LoadBalancingSettingsProperties

Nome Descrizione Valore
additionalLatencyMilliseconds Latenza aggiuntiva in millisecondi per i probe che rientrano nel bucket di latenza più basso INT
sampleSize Numero di campioni da considerare per le decisioni di bilanciamento del carico INT
successfulSamplesRequired Numero di campioni entro il periodo di campionamento che deve avere esito positivo INT

RoutingRule

Nome Descrizione Valore
id ID risorsa. string
name Nome risorsa. string
properties Proprietà della regola di routing di Frontdoor RoutingRuleProperties

RoutingRuleProperties

Nome Descrizione Valore
acceptedProtocols Schemi di protocollo che corrispondono a questa regola Matrice di stringhe contenente uno dei seguenti elementi:
"Http"
"Https"
enabledState Indica se abilitare l'uso di questa regola. I valori consentiti sono 'Enabled' o 'Disabled' "Disabilitato"
"Abilitato"
frontendEndpoints Endpoint front-end associati a questa regola SubResource[]
patternsToMatch Modelli di route della regola. string[]
routeConfiguration Riferimento alla configurazione del routing. RouteConfiguration
rulesEngine Riferimento a una specifica configurazione del motore regole da applicare a questa route. Sottorisorsa
webApplicationFirewallPolicyLink Definisce i criteri di Web application firewall per ogni regola di routing (se applicabile) RoutingRuleUpdateParametersWebApplicationFirewallPol...

RouteConfiguration

Nome Descrizione Valore
@odata.type Impostare il tipo di oggetto #Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration
#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration (obbligatorio)

ForwardingConfiguration

Nome Descrizione Valore
@odata.type "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration" (obbligatorio)
backendPool Riferimento a BackendPool a cui viene instradata questa regola. Sottorisorsa
cacheConfiguration Configurazione di memorizzazione nella cache associata a questa regola. CacheConfiguration
customForwardingPath Percorso personalizzato utilizzato per riscrivere i percorsi delle risorse corrispondenti a questa regola. Lasciare vuoto per usare il percorso di ingresso. string
forwardingProtocol Questo protocollo userà durante l'inoltro del traffico ai back-end. "HttpOnly"
"HttpsOnly"
"MatchRequest"

CacheConfiguration

Nome Descrizione Valore
Cacheduration Durata per cui il contenuto deve essere memorizzato nella cache. Il formato consentito è in formato ISO 8601 (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP richiede che il valore non sia più di un anno string
dynamicCompression Se usare la compressione dinamica per il contenuto memorizzato nella cache "Disabilitato"
"Abilitato"
queryParameters parametri di query da includere o escludere (delimitati da virgole). string
queryParameterStripDirective Trattamento dei termini di query URL quando si forma la chiave della cache. "StripAll"
"StripAllExcept"
"StripNone"
"StripOnly"

RedirectConfiguration

Nome Descrizione Valore
@odata.type "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration" (obbligatorio)
customFragment Frammento da aggiungere all'URL di reindirizzamento. Il frammento è la parte dell'URL che viene dopo #. Non includere #. string
customHost Host da reindirizzare. Lasciare vuoto l'host in ingresso come host di destinazione. string
customPath Percorso completo da reindirizzare. Il percorso non può essere vuoto e deve iniziare con /. Lasciare vuoto per usare il percorso in ingresso come percorso di destinazione. string
customQueryString Set di stringhe di query da inserire nell'URL di reindirizzamento. L'impostazione di questo valore sostituirà qualsiasi stringa di query esistente; lasciare vuoto per mantenere la stringa di query in ingresso. La stringa di query deve essere in formato {key}={value}. Il primo ? e & verranno aggiunti automaticamente in modo da non includerli in primo piano, ma separare più stringhe di query con &. string
redirectProtocol Protocollo della destinazione a cui viene reindirizzato il traffico "HttpOnly"
"HttpsOnly"
"MatchRequest"
redirectType Il tipo di reindirizzamento verrà usato durante il reindirizzamento del traffico. "Trovato"
"Spostato"
"PermanentRedirect"
"TemporaryRedirect"

RoutingRuleUpdateParametersWebApplicationFirewallPol...

Nome Descrizione Valore
id ID risorsa. string