Front Doors - List
Lists all of the Front Doors within an Azure subscription.
GET https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoors?api-version=2021-06-01
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
subscription
|
path | True |
string |
The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call. |
api-version
|
query | True |
string |
Client API version. |
Responses
Name | Type | Description |
---|---|---|
200 OK |
OK |
|
Other Status Codes |
Front Door error response describing why the operation failed. |
Security
azure_auth
Azure Active Directory OAuth2 Flow
Type:
oauth2
Flow:
implicit
Authorization URL:
https://login.microsoftonline.com/common/oauth2/authorize
Scopes
Name | Description |
---|---|
user_impersonation | impersonate your user account |
Examples
List all Front Doors
Sample request
Sample response
{
"value": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1",
"name": "frontDoor1",
"type": "Microsoft.Network/frontDoor",
"location": "westus",
"tags": {
"tag1": "value1",
"tag2": "value2"
},
"properties": {
"routingRules": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1",
"name": "routingRule1",
"properties": {
"frontendEndpoints": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1"
},
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default"
}
],
"acceptedProtocols": [
"Http"
],
"patternsToMatch": [
"/*"
],
"routeConfiguration": {
"@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
"customForwardingPath": "",
"forwardingProtocol": "MatchRequest",
"backendPool": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1"
}
},
"rulesEngine": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/rulesEngines/rulesEngine1"
},
"enabledState": "Enabled",
"webApplicationFirewallPolicyLink": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
}
}
}
],
"healthProbeSettings": [
{
"name": "healthProbeSettings1",
"properties": {
"path": "/",
"protocol": "Http",
"intervalInSeconds": 120,
"enabledState": "Enabled",
"healthProbeMethod": "HEAD"
}
}
],
"loadBalancingSettings": [
{
"name": "loadBalancingSettings1",
"properties": {
"sampleSize": 4,
"successfulSamplesRequired": 2
}
}
],
"backendPools": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1",
"name": "backendPool1",
"properties": {
"backends": [
{
"address": "w3.contoso.com",
"httpPort": 80,
"httpsPort": 443,
"enabledState": "Enabled",
"weight": 1,
"priority": 2
},
{
"privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1",
"privateLinkLocation": "eastus",
"privateEndpointStatus": "Approved",
"privateLinkApprovalMessage": "Please approve the connection request for this Private Link",
"address": "contoso.com.website-us-west-2.othercloud.net",
"httpPort": 80,
"httpsPort": 443,
"enabledState": "Enabled",
"weight": 2,
"priority": 1
},
{
"privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice",
"privateEndpointStatus": "Approved",
"privateLinkApprovalMessage": "Please approve the connection request for this Private Link",
"address": "10.0.1.5",
"httpPort": 80,
"httpsPort": 443,
"enabledState": "Enabled",
"weight": 1,
"priority": 1
}
],
"loadBalancingSettings": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1"
},
"healthProbeSettings": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1"
}
}
}
],
"frontendEndpoints": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1",
"name": "frontendEndpoint1",
"properties": {
"hostName": "www.contoso.com",
"sessionAffinityEnabledState": "Enabled",
"sessionAffinityTtlSeconds": 60,
"webApplicationFirewallPolicyLink": {
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
}
}
},
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default",
"name": "default",
"properties": {
"hostName": "frontDoor1.azurefd.net"
}
}
],
"rulesEngines": [
{
"id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/rulesEngine1",
"name": "rulesEngine1",
"properties": {
"rules": [
{
"name": "Rule1",
"priority": 1,
"action": {
"routeConfigurationOverride": {
"@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration",
"redirectType": "Moved",
"redirectProtocol": "HttpsOnly",
"customHost": "www.bing.com",
"customPath": "/api",
"customFragment": "fragment",
"customQueryString": "a=b"
}
},
"matchConditions": [
{
"rulesEngineMatchVariable": "RemoteAddr",
"rulesEngineOperator": "GeoMatch",
"rulesEngineMatchValue": [
"CH"
]
}
],
"matchProcessingBehavior": "Stop"
},
{
"name": "Rule2",
"priority": 2,
"action": {
"responseHeaderActions": [
{
"headerActionType": "Overwrite",
"headerName": "Cache-Control",
"value": "public, max-age=31536000"
}
]
},
"matchConditions": [
{
"rulesEngineMatchVariable": "FilenameExtension",
"rulesEngineOperator": "Equal",
"rulesEngineMatchValue": [
"jpg"
],
"transforms": [
"Lowercase"
]
}
]
}
]
}
}
],
"backendPoolsSettings": {
"enforceCertificateNameCheck": "Enabled"
},
"enabledState": "Enabled",
"resourceState": "Enabled",
"provisioningState": "Succeeded",
"cname": "frontDoor1.azurefd.net"
}
}
]
}
Definitions
Name | Description |
---|---|
Backend |
Backend address of a frontDoor load balancer. |
backend |
Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled' |
Backend |
A backend pool is a collection of backends that can be routed to. |
Backend |
Settings that apply to all backend pools. |
Cache |
Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object. |
Custom |
Https settings for a domain |
Custom |
Provisioning status of Custom Https of the frontendEndpoint. |
Custom |
Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step. |
Dynamic |
Whether to use dynamic compression for cached content |
enforce |
Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests. |
Error |
Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message. |
Forwarding |
Describes Forwarding Route. |
Front |
Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there. |
Front |
Defines the source of the SSL certificate |
Front |
Defines the type of the certificate used for secure connections to a frontendEndpoint |
Front |
Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' |
Front |
Protocol this rule will use when forwarding traffic to backends. |
Front |
Configures which HTTP method to use to probe the backends defined under backendPools. |
Front |
Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results. |
Front |
Protocol schemes to match for this rule |
Front |
Treatment of URL query terms when forming the cache key. |
Front |
The protocol of the destination to where the traffic is redirected |
Front |
The redirect type the rule will use when redirecting traffic. |
Front |
Resource status of the Front Door or Front Door SubResource. |
Front |
Defines the TLS extension protocol that is used for secure delivery |
Frontend |
A frontend endpoint used for routing. |
Frontend |
Defines the Web Application Firewall policy for each host (if applicable) |
Header |
An action that can manipulate an http header. |
header |
Which type of manipulation to apply to the header. |
Health |
Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. |
Health |
Load balancing settings for a backend pool |
Load |
Load balancing settings for a backend pool |
Match |
If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue. |
Minimum |
The minimum TLS version required from the clients to establish an SSL handshake with Front Door. |
Private |
The Approval status for the connection to the Private Link |
Redirect |
Describes Redirect Route. |
Routing |
A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. |
routing |
Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' |
Rules |
A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response. |
Rules |
One or more actions that will execute, modifying the request and/or response. |
Rules |
Define a match condition |
Rules |
Match Variable |
Rules |
Describes operator to apply to the match condition. |
Rules |
Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation. |
Session |
Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' |
Sub |
Reference to another subresource. |
transform |
Describes what transforms are applied before matching |
Vault |
The Key Vault containing the SSL certificate |
Web |
Defines the Web Application Firewall policy for each routing rule (if applicable) |
Backend
Backend address of a frontDoor load balancer.
Name | Type | Description |
---|---|---|
address |
string |
Location of the backend (IP address or FQDN) |
backendHostHeader |
string |
The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host. |
enabledState |
Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled' |
|
httpPort |
integer minimum: 1maximum: 65535 exclusiveMinimum: False exclusiveMaximum: False |
The HTTP TCP port number. Must be between 1 and 65535. |
httpsPort |
integer minimum: 1maximum: 65535 exclusiveMinimum: False exclusiveMaximum: False |
The HTTPS TCP port number. Must be between 1 and 65535. |
priority |
integer minimum: 1maximum: 5 |
Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. |
privateEndpointStatus |
The Approval status for the connection to the Private Link |
|
privateLinkAlias |
string |
The Alias of the Private Link resource. Populating this optional field indicates that this backend is 'Private' |
privateLinkApprovalMessage |
string |
A custom message to be included in the approval request to connect to the Private Link |
privateLinkLocation |
string |
The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated |
privateLinkResourceId |
string |
The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private' |
weight |
integer minimum: 1maximum: 1000 |
Weight of this endpoint for load balancing purposes. |
backendEnabledState
Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'
Value | Description |
---|---|
Enabled | |
Disabled |
BackendPool
A backend pool is a collection of backends that can be routed to.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.backends |
Backend[] |
The set of backends for this pool |
properties.healthProbeSettings |
L7 health probe settings for a backend pool |
|
properties.loadBalancingSettings |
Load balancing settings for a backend pool |
|
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
type |
string |
Resource type. |
BackendPoolsSettings
Settings that apply to all backend pools.
Name | Type | Default value | Description |
---|---|---|---|
enforceCertificateNameCheck | Enabled |
Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests. |
|
sendRecvTimeoutSeconds |
integer minimum: 16exclusiveMinimum: False |
Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns. |
CacheConfiguration
Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.
Name | Type | Description |
---|---|---|
cacheDuration |
string (duration) |
The duration for which the content needs to be cached. Allowed format is in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requires the value to be no more than a year |
dynamicCompression |
Whether to use dynamic compression for cached content |
|
queryParameterStripDirective |
Treatment of URL query terms when forming the cache key. |
|
queryParameters |
string |
query parameters to include or exclude (comma separated). |
CustomHttpsConfiguration
Https settings for a domain
Name | Type | Description |
---|---|---|
certificateSource |
Defines the source of the SSL certificate |
|
frontDoorCertificateSourceParameters.certificateType |
Defines the type of the certificate used for secure connections to a frontendEndpoint |
|
keyVaultCertificateSourceParameters.secretName |
string |
The name of the Key Vault secret representing the full certificate PFX |
keyVaultCertificateSourceParameters.secretVersion |
string |
The version of the Key Vault secret representing the full certificate PFX |
keyVaultCertificateSourceParameters.vault |
The Key Vault containing the SSL certificate |
|
minimumTlsVersion |
The minimum TLS version required from the clients to establish an SSL handshake with Front Door. |
|
protocolType |
Defines the TLS extension protocol that is used for secure delivery |
CustomHttpsProvisioningState
Provisioning status of Custom Https of the frontendEndpoint.
Value | Description |
---|---|
Enabling | |
Enabled | |
Disabling | |
Disabled | |
Failed |
CustomHttpsProvisioningSubstate
Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.
Value | Description |
---|---|
SubmittingDomainControlValidationRequest | |
PendingDomainControlValidationREquestApproval | |
DomainControlValidationRequestApproved | |
DomainControlValidationRequestRejected | |
DomainControlValidationRequestTimedOut | |
IssuingCertificate | |
DeployingCertificate | |
CertificateDeployed | |
DeletingCertificate | |
CertificateDeleted |
DynamicCompressionEnabled
Whether to use dynamic compression for cached content
Value | Description |
---|---|
Enabled | |
Disabled |
enforceCertificateNameCheckEnabledState
Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.
Value | Description |
---|---|
Enabled | |
Disabled |
ErrorResponse
Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.
Name | Type | Description |
---|---|---|
code |
string |
Error code. |
message |
string |
Error message indicating why the operation failed. |
ForwardingConfiguration
Describes Forwarding Route.
Name | Type | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
|
backendPool |
A reference to the BackendPool which this rule routes to. |
|
cacheConfiguration |
The caching configuration associated with this rule. |
|
customForwardingPath |
string |
A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path. |
forwardingProtocol |
Protocol this rule will use when forwarding traffic to backends. |
FrontDoor
Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
location |
string |
Resource location. |
name |
string |
Resource name. |
properties.backendPools |
Backend pools available to routing rules. |
|
properties.backendPoolsSettings |
Settings for all backendPools |
|
properties.cname |
string |
The host that each frontendEndpoint must CNAME to. |
properties.enabledState |
Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' |
|
properties.extendedProperties |
object |
Key-Value pair representing additional properties for frontdoor. |
properties.friendlyName |
string |
A friendly name for the frontDoor |
properties.frontdoorId |
string |
The Id of the frontdoor. |
properties.frontendEndpoints |
Frontend endpoints available to routing rules. |
|
properties.healthProbeSettings |
Health probe settings associated with this Front Door instance. |
|
properties.loadBalancingSettings |
Load balancing settings associated with this Front Door instance. |
|
properties.provisioningState |
string |
Provisioning state of the Front Door. |
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
properties.routingRules |
Routing rules associated with this Front Door. |
|
properties.rulesEngines |
Rules Engine Configurations available to routing rules. |
|
tags |
object |
Resource tags. |
type |
string |
Resource type. |
FrontDoorCertificateSource
Defines the source of the SSL certificate
Value | Description |
---|---|
AzureKeyVault | |
FrontDoor |
FrontDoorCertificateType
Defines the type of the certificate used for secure connections to a frontendEndpoint
Value | Description |
---|---|
Dedicated |
FrontDoorEnabledState
Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'
Value | Description |
---|---|
Enabled | |
Disabled |
FrontDoorForwardingProtocol
Protocol this rule will use when forwarding traffic to backends.
Value | Description |
---|---|
HttpOnly | |
HttpsOnly | |
MatchRequest |
FrontDoorHealthProbeMethod
Configures which HTTP method to use to probe the backends defined under backendPools.
Value | Description |
---|---|
GET | |
HEAD |
FrontDoorListResult
Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results.
Name | Type | Description |
---|---|---|
nextLink |
string |
URL to get the next set of Front Door objects if there are any. |
value |
List of Front Doors within a resource group. |
FrontDoorProtocol
Protocol schemes to match for this rule
Value | Description |
---|---|
Http | |
Https |
FrontDoorQuery
Treatment of URL query terms when forming the cache key.
Value | Description |
---|---|
StripNone | |
StripAll | |
StripOnly | |
StripAllExcept |
FrontDoorRedirectProtocol
The protocol of the destination to where the traffic is redirected
Value | Description |
---|---|
HttpOnly | |
HttpsOnly | |
MatchRequest |
FrontDoorRedirectType
The redirect type the rule will use when redirecting traffic.
Value | Description |
---|---|
Moved | |
Found | |
TemporaryRedirect | |
PermanentRedirect |
FrontDoorResourceState
Resource status of the Front Door or Front Door SubResource.
Value | Description |
---|---|
Creating | |
Enabling | |
Enabled | |
Disabling | |
Disabled | |
Deleting | |
Migrating | |
Migrated |
FrontDoorTlsProtocolType
Defines the TLS extension protocol that is used for secure delivery
Value | Description |
---|---|
ServerNameIndication |
FrontendEndpoint
A frontend endpoint used for routing.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.customHttpsConfiguration |
The configuration specifying how to enable HTTPS |
|
properties.customHttpsProvisioningState |
Provisioning status of Custom Https of the frontendEndpoint. |
|
properties.customHttpsProvisioningSubstate |
Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step. |
|
properties.hostName |
string |
The host name of the frontendEndpoint. Must be a domain name. |
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
properties.sessionAffinityEnabledState |
Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' |
|
properties.sessionAffinityTtlSeconds |
integer |
UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable. |
properties.webApplicationFirewallPolicyLink |
Frontend |
Defines the Web Application Firewall policy for each host (if applicable) |
type |
string |
Resource type. |
FrontendEndpointUpdateParameters.WebApplicationFirewallPolicyLink
Defines the Web Application Firewall policy for each host (if applicable)
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
HeaderAction
An action that can manipulate an http header.
Name | Type | Description |
---|---|---|
headerActionType |
Which type of manipulation to apply to the header. |
|
headerName |
string |
The name of the header this action will apply to. |
value |
string |
The value to update the given header name with. This value is not used if the actionType is Delete. |
headerActionType
Which type of manipulation to apply to the header.
Value | Description |
---|---|
Append | |
Delete | |
Overwrite |
HealthProbeEnabled
Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool.
Value | Description |
---|---|
Enabled | |
Disabled |
HealthProbeSettingsModel
Load balancing settings for a backend pool
Name | Type | Default value | Description |
---|---|---|---|
id |
string |
Resource ID. |
|
name |
string |
Resource name. |
|
properties.enabledState |
Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. |
||
properties.healthProbeMethod | HEAD |
Configures which HTTP method to use to probe the backends defined under backendPools. |
|
properties.intervalInSeconds |
integer |
The number of seconds between health probes. |
|
properties.path |
string |
The path to use for the health probe. Default is / |
|
properties.protocol |
Protocol scheme to use for this probe |
||
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
||
type |
string |
Resource type. |
LoadBalancingSettingsModel
Load balancing settings for a backend pool
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.additionalLatencyMilliseconds |
integer |
The additional latency in milliseconds for probes to fall into the lowest latency bucket |
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
properties.sampleSize |
integer |
The number of samples to consider for load balancing decisions |
properties.successfulSamplesRequired |
integer |
The number of samples within the sample period that must succeed |
type |
string |
Resource type. |
MatchProcessingBehavior
If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.
Value | Description |
---|---|
Continue | |
Stop |
MinimumTLSVersion
The minimum TLS version required from the clients to establish an SSL handshake with Front Door.
Value | Description |
---|---|
1.0 | |
1.2 |
PrivateEndpointStatus
The Approval status for the connection to the Private Link
Value | Description |
---|---|
Pending | |
Approved | |
Rejected | |
Disconnected | |
Timeout |
RedirectConfiguration
Describes Redirect Route.
Name | Type | Description |
---|---|---|
@odata.type |
string:
#Microsoft. |
|
customFragment |
string |
Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #. |
customHost |
string |
Host to redirect. Leave empty to use the incoming host as the destination host. |
customPath |
string |
The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path. |
customQueryString |
string |
The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in <key>=<value> format. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &. |
redirectProtocol |
The protocol of the destination to where the traffic is redirected |
|
redirectType |
The redirect type the rule will use when redirecting traffic. |
RoutingRule
A routing rule represents a specification for traffic to treat and where to send it, along with health probe information.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.acceptedProtocols |
Protocol schemes to match for this rule |
|
properties.enabledState |
Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' |
|
properties.frontendEndpoints |
Frontend endpoints associated with this rule |
|
properties.patternsToMatch |
string[] |
The route patterns of the rule. |
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
properties.routeConfiguration | RouteConfiguration: |
A reference to the routing configuration. |
properties.rulesEngine |
A reference to a specific Rules Engine Configuration to apply to this route. |
|
properties.webApplicationFirewallPolicyLink |
Defines the Web Application Firewall policy for each routing rule (if applicable) |
|
type |
string |
Resource type. |
routingRuleEnabledState
Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'
Value | Description |
---|---|
Enabled | |
Disabled |
RulesEngine
A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
name |
string |
Resource name. |
properties.resourceState |
Resource status of the Front Door or Front Door SubResource. |
|
properties.rules |
A list of rules that define a particular Rules Engine Configuration. |
|
type |
string |
Resource type. |
RulesEngineAction
One or more actions that will execute, modifying the request and/or response.
Name | Type | Description |
---|---|---|
requestHeaderActions |
A list of header actions to apply from the request from AFD to the origin. |
|
responseHeaderActions |
A list of header actions to apply from the response from AFD to the client. |
|
routeConfigurationOverride | RouteConfiguration: |
Override the route configuration. |
RulesEngineMatchCondition
Define a match condition
Name | Type | Description |
---|---|---|
negateCondition |
boolean |
Describes if this is negate condition or not |
rulesEngineMatchValue |
string[] |
Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match. |
rulesEngineMatchVariable |
Match Variable |
|
rulesEngineOperator |
Describes operator to apply to the match condition. |
|
selector |
string |
Name of selector in RequestHeader or RequestBody to be matched |
transforms |
List of transforms |
RulesEngineMatchVariable
Match Variable
Value | Description |
---|---|
IsMobile | |
RemoteAddr | |
RequestMethod | |
QueryString | |
PostArgs | |
RequestUri | |
RequestPath | |
RequestFilename | |
RequestFilenameExtension | |
RequestHeader | |
RequestBody | |
RequestScheme |
RulesEngineOperator
Describes operator to apply to the match condition.
Value | Description |
---|---|
Any | |
IPMatch | |
GeoMatch | |
Equal | |
Contains | |
LessThan | |
GreaterThan | |
LessThanOrEqual | |
GreaterThanOrEqual | |
BeginsWith | |
EndsWith |
RulesEngineRule
Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation.
Name | Type | Description |
---|---|---|
action |
Actions to perform on the request and response if all of the match conditions are met. |
|
matchConditions |
A list of match conditions that must meet in order for the actions of this rule to run. Having no match conditions means the actions will always run. |
|
matchProcessingBehavior |
If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue. |
|
name |
string |
A name to refer to this specific rule. |
priority |
integer |
A priority assigned to this rule. |
SessionAffinityEnabledState
Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'
Value | Description |
---|---|
Enabled | |
Disabled |
SubResource
Reference to another subresource.
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
transform
Describes what transforms are applied before matching
Value | Description |
---|---|
Lowercase | |
Uppercase | |
Trim | |
UrlDecode | |
UrlEncode | |
RemoveNulls |
Vault
The Key Vault containing the SSL certificate
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |
WebApplicationFirewallPolicyLink
Defines the Web Application Firewall policy for each routing rule (if applicable)
Name | Type | Description |
---|---|---|
id |
string |
Resource ID. |