Share via


az network application-gateway rule

Evaluate probe information and define HTTP/HTTPS routing rules.

For more information, visit https://learn.microsoft.com/en-us/azure/web-application-firewall/ag/application-gateway-customize-waf-rules-cli.

Commands

Name Description Type Status
az network application-gateway rule create

Create a rule.

Core GA
az network application-gateway rule delete

Delete a rule.

Core GA
az network application-gateway rule list

List rules.

Core GA
az network application-gateway rule show

Get the details of a rule.

Core GA
az network application-gateway rule update

Update a rule.

Core GA
az network application-gateway rule wait

Place the CLI in a waiting state until a condition is met.

Core GA

az network application-gateway rule create

Create a rule.

Rules are executed in the order in which they are created.

az network application-gateway rule create --gateway-name
                                           --name
                                           --resource-group
                                           [--address-pool]
                                           [--http-listener]
                                           [--http-settings]
                                           [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
                                           [--priority]
                                           [--redirect-config]
                                           [--rewrite-rule-set]
                                           [--rule-type {Basic, PathBasedRouting}]
                                           [--url-path-map]

Examples

Create a basic rule.

az network application-gateway rule create -g MyResourceGroup --gateway-name MyAppGateway -n MyRule --http-listener MyBackendListener --rule-type Basic --address-pool MyAddressPool --http-settings MyHttpSettings

Required Parameters

--gateway-name

Name of the application gateway.

--name -n

Name of the request routing rule.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--address-pool

Name or ID of the backend address pool. If only one exists, omit to use as default.

--http-listener

Name or ID of the HTTP listener. If only one exists, omit to use as default.

--http-settings

Name or ID of the HTTP settings. If only one exists, omit to use as default.

--no-wait

Do not wait for the long-running operation to finish.

Accepted values: 0, 1, f, false, n, no, t, true, y, yes
--priority

Priority of the request routing rule. Supported SKU tiers are Standard_v2, WAF_v2.

--redirect-config

Name or ID of the redirect configuration to use with the created rule.

--rewrite-rule-set

Name or ID of the rewrite rule set.

--rule-type

Type of the request routing rule.

Accepted values: Basic, PathBasedRouting
Default value: Basic
--url-path-map

Name or ID of the url path map.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az network application-gateway rule delete

Delete a rule.

az network application-gateway rule delete --gateway-name
                                           --name
                                           --resource-group
                                           [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]

Examples

Delete a rule.

az network application-gateway rule delete -g MyResourceGroup --gateway-name MyAppGateway -n MyRule

Required Parameters

--gateway-name

Name of the application gateway.

--name -n

Name of the request routing rule.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--no-wait

Do not wait for the long-running operation to finish.

Accepted values: 0, 1, f, false, n, no, t, true, y, yes
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az network application-gateway rule list

List rules.

az network application-gateway rule list --gateway-name
                                         --resource-group

Examples

List rules.

az network application-gateway rule list -g MyResourceGroup --gateway-name MyAppGateway

Required Parameters

--gateway-name

Name of the application gateway.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az network application-gateway rule show

Get the details of a rule.

az network application-gateway rule show --gateway-name
                                         --name
                                         --resource-group

Examples

Get the details of a rule.

az network application-gateway rule show -g MyResourceGroup --gateway-name MyAppGateway -n MyRule

Required Parameters

--gateway-name

Name of the application gateway.

--name -n

Name of the request routing rule.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az network application-gateway rule update

Update a rule.

az network application-gateway rule update --gateway-name
                                           --name
                                           --resource-group
                                           [--add]
                                           [--address-pool]
                                           [--force-string {0, 1, f, false, n, no, t, true, y, yes}]
                                           [--http-listener]
                                           [--http-settings]
                                           [--no-wait {0, 1, f, false, n, no, t, true, y, yes}]
                                           [--priority]
                                           [--redirect-config]
                                           [--remove]
                                           [--rewrite-rule-set]
                                           [--rule-type {Basic, PathBasedRouting}]
                                           [--set]
                                           [--url-path-map]

Examples

Update a rule use a new HTTP listener.

az network application-gateway rule update -g MyResourceGroup --gateway-name MyAppGateway -n MyRule --http-listener MyNewBackendListener

Required Parameters

--gateway-name

Name of the application gateway.

--name -n

Name of the request routing rule.

--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

Optional Parameters

--add

Add an object to a list of objects by specifying a path and key value pairs. Example: --add property.listProperty <key=value, string or JSON string>.

--address-pool

Name or ID of the backend address pool. If only one exists, omit to use as default.

--force-string

When using 'set' or 'add', preserve string literals instead of attempting to convert to JSON.

Accepted values: 0, 1, f, false, n, no, t, true, y, yes
--http-listener

Name or ID of the HTTP listener. If only one exists, omit to use as default.

--http-settings

Name or ID of the HTTP settings. If only one exists, omit to use as default.

--no-wait

Do not wait for the long-running operation to finish.

Accepted values: 0, 1, f, false, n, no, t, true, y, yes
--priority

Priority of the request routing rule. Supported SKU tiers are Standard_v2, WAF_v2.

--redirect-config

Name or ID of the redirect configuration to use with the created rule.

--remove

Remove a property or an element from a list. Example: --remove property.list <indexToRemove> OR --remove propertyToRemove.

--rewrite-rule-set

Name or ID of the rewrite rule set.

--rule-type

Type of the request routing rule.

Accepted values: Basic, PathBasedRouting
--set

Update an object by specifying a property path and value to set. Example: --set property1.property2=<value>.

--url-path-map

Name or ID of the url path map.

Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.

az network application-gateway rule wait

Place the CLI in a waiting state until a condition is met.

az network application-gateway rule wait [--created]
                                         [--custom]
                                         [--deleted]
                                         [--exists]
                                         [--gateway-name]
                                         [--ids]
                                         [--interval]
                                         [--resource-group]
                                         [--subscription]
                                         [--timeout]
                                         [--updated]

Optional Parameters

--created

Wait until created with 'provisioningState' at 'Succeeded'.

Default value: False
--custom

Wait until the condition satisfies a custom JMESPath query. E.g. provisioningState!='InProgress', instanceView.statuses[?code=='PowerState/running'].

--deleted

Wait until deleted.

Default value: False
--exists

Wait until the resource exists.

Default value: False
--gateway-name

Name of the application gateway.

--ids

One or more resource IDs (space-delimited). It should be a complete resource ID containing all information of 'Resource Id' arguments. You should provide either --ids or other 'Resource Id' arguments.

--interval

Polling interval in seconds.

Default value: 30
--resource-group -g

Name of resource group. You can configure the default group using az configure --defaults group=<name>.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--timeout

Maximum wait in seconds.

Default value: 3600
--updated

Wait until updated with provisioningState at 'Succeeded'.

Default value: False
Global Parameters
--debug

Increase logging verbosity to show all debug logs.

--help -h

Show this help message and exit.

--only-show-errors

Only show errors, suppressing warnings.

--output -o

Output format.

Accepted values: json, jsonc, none, table, tsv, yaml, yamlc
Default value: json
--query

JMESPath query string. See http://jmespath.org/ for more information and examples.

--subscription

Name or ID of subscription. You can configure the default subscription using az account set -s NAME_OR_ID.

--verbose

Increase logging verbosity. Use --debug for full debug logs.