你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Policies - Create Or Update

Create或更新资源组中具有指定规则集名称的策略。

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}?api-version=2024-02-01

URI 参数

名称 必需 类型 说明
policyName
path True

string

Web 应用程序防火墙策略的名称。

resourceGroupName
path True

string

Azure 订阅中的资源组的名称。

正则表达式模式: ^[a-zA-Z0-9_\-\(\)\.]*[^\.]$

subscriptionId
path True

string

可以唯一标识 Microsoft Azure 订阅的订阅凭据。 此订阅 ID 是每个服务调用的 URI 的一部分。

api-version
query True

string

客户端 API 版本。

请求正文

名称 类型 说明
etag

string

获取一个唯一的只读字符串,该字符串在资源更新时会更改。

location

string

资源位置。

properties.customRules

CustomRuleList

描述策略中的自定义规则。

properties.managedRules

ManagedRuleSetList

描述策略中的托管规则。

properties.policySettings

PolicySettings

描述策略的设置。

sku

Sku

Web 应用程序防火墙策略的定价层。 如果未指定,则默认为 Classic_AzureFrontDoor。

tags

object

资源标记。

响应

名称 类型 说明
200 OK

WebApplicationFirewallPolicy

没问题。 请求已成功。

201 Created

WebApplicationFirewallPolicy

Created. 请求已得到满足,并已创建新的保护策略。

202 Accepted

WebApplicationFirewallPolicy

已接受。 已接受请求进行处理,操作将以异步方式完成。

Other Status Codes

ErrorResponse

描述操作失败原因的错误响应。

安全性

azure_auth

Azure Active Directory OAuth2 流

类型: oauth2
流向: implicit
授权 URL: https://login.microsoftonline.com/common/oauth2/authorize

作用域

名称 说明
user_impersonation 模拟用户帐户

示例

Creates specific policy

示例请求

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/Policy1?api-version=2024-02-01

{
  "location": "WestUs",
  "properties": {
    "policySettings": {
      "enabledState": "Enabled",
      "mode": "Prevention",
      "redirectUrl": "http://www.bing.com",
      "customBlockResponseStatusCode": 429,
      "customBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==",
      "requestBodyCheck": "Disabled",
      "javascriptChallengeExpirationInMinutes": 30,
      "logScrubbing": {
        "state": "Enabled",
        "scrubbingRules": [
          {
            "matchVariable": "RequestIPAddress",
            "selectorMatchOperator": "EqualsAny",
            "selector": null,
            "state": "Enabled"
          }
        ]
      }
    },
    "customRules": {
      "rules": [
        {
          "name": "Rule1",
          "priority": 1,
          "ruleType": "RateLimitRule",
          "rateLimitThreshold": 1000,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "operator": "IPMatch",
              "matchValue": [
                "192.168.1.0/24",
                "10.0.0.0/24"
              ]
            }
          ],
          "action": "Block"
        },
        {
          "name": "Rule2",
          "priority": 2,
          "ruleType": "MatchRule",
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "operator": "GeoMatch",
              "matchValue": [
                "CH"
              ]
            },
            {
              "matchVariable": "RequestHeader",
              "operator": "Contains",
              "selector": "UserAgent",
              "matchValue": [
                "windows"
              ],
              "transforms": [
                "Lowercase"
              ]
            }
          ],
          "action": "Block"
        }
      ]
    },
    "managedRules": {
      "managedRuleSets": [
        {
          "ruleSetType": "DefaultRuleSet",
          "ruleSetVersion": "1.0",
          "ruleSetAction": "Block",
          "exclusions": [
            {
              "matchVariable": "RequestHeaderNames",
              "selectorMatchOperator": "Equals",
              "selector": "User-Agent"
            }
          ],
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "SQLI",
              "exclusions": [
                {
                  "matchVariable": "RequestCookieNames",
                  "selectorMatchOperator": "StartsWith",
                  "selector": "token"
                }
              ],
              "rules": [
                {
                  "ruleId": "942100",
                  "enabledState": "Enabled",
                  "action": "Redirect",
                  "exclusions": [
                    {
                      "matchVariable": "QueryStringArgNames",
                      "selectorMatchOperator": "Equals",
                      "selector": "query"
                    }
                  ]
                },
                {
                  "ruleId": "942110",
                  "enabledState": "Disabled"
                }
              ]
            }
          ]
        }
      ]
    }
  },
  "sku": {
    "name": "Premium_AzureFrontDoor"
  }
}

示例响应

{
  "name": "Policy1",
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/Policy1",
  "type": "Microsoft.Network/frontdoorwebapplicationfirewallpolicies",
  "tags": {
    "key1": "value1",
    "key2": "value2"
  },
  "location": "WestUs",
  "properties": {
    "resourceState": "Enabled",
    "provisioningState": "Succeeded",
    "policySettings": {
      "enabledState": "Enabled",
      "mode": "Prevention",
      "redirectUrl": "http://www.bing.com",
      "customBlockResponseStatusCode": 429,
      "customBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==",
      "requestBodyCheck": "Disabled",
      "javascriptChallengeExpirationInMinutes": 30,
      "logScrubbing": {
        "state": "Enabled",
        "scrubbingRules": [
          {
            "matchVariable": "RequestIPAddress",
            "selectorMatchOperator": "EqualsAny",
            "selector": null,
            "state": "Enabled"
          }
        ]
      }
    },
    "customRules": {
      "rules": [
        {
          "name": "Rule1",
          "priority": 1,
          "enabledState": "Enabled",
          "ruleType": "RateLimitRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 1000,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "IPMatch",
              "negateCondition": false,
              "matchValue": [
                "192.168.1.0/24",
                "10.0.0.0/24"
              ],
              "transforms": []
            }
          ],
          "action": "Block"
        },
        {
          "name": "Rule2",
          "priority": 2,
          "enabledState": "Enabled",
          "ruleType": "MatchRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 0,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "GeoMatch",
              "negateCondition": false,
              "matchValue": [
                "CH"
              ]
            },
            {
              "matchVariable": "RequestHeader",
              "selector": "UserAgent",
              "operator": "Contains",
              "negateCondition": false,
              "matchValue": [
                "windows"
              ],
              "transforms": [
                "Lowercase"
              ]
            }
          ],
          "action": "Block"
        }
      ]
    },
    "managedRules": {
      "managedRuleSets": [
        {
          "ruleSetType": "DefaultRuleSet",
          "ruleSetVersion": "1.0",
          "ruleSetAction": "Block",
          "exclusions": [
            {
              "matchVariable": "RequestHeaderNames",
              "selectorMatchOperator": "Equals",
              "selector": "User-Agent"
            }
          ],
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "SQLI",
              "exclusions": [
                {
                  "matchVariable": "RequestCookieNames",
                  "selectorMatchOperator": "StartsWith",
                  "selector": "token"
                }
              ],
              "rules": [
                {
                  "ruleId": "942100",
                  "enabledState": "Enabled",
                  "action": "Redirect",
                  "exclusions": [
                    {
                      "matchVariable": "QueryStringArgNames",
                      "selectorMatchOperator": "Equals",
                      "selector": "query"
                    }
                  ]
                },
                {
                  "ruleId": "942110",
                  "enabledState": "Disabled"
                }
              ]
            }
          ]
        }
      ]
    },
    "frontendEndpointLinks": [],
    "securityPolicyLinks": []
  },
  "sku": {
    "name": "Premium_AzureFrontDoor"
  }
}
{
  "name": "Policy1",
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/Policy1",
  "type": "Microsoft.Network/frontdoorwebapplicationfirewallpolicies",
  "tags": {
    "key1": "value1",
    "key2": "value2"
  },
  "location": "WestUs",
  "properties": {
    "resourceState": "Enabled",
    "provisioningState": "Succeeded",
    "policySettings": {
      "enabledState": "Enabled",
      "mode": "Prevention",
      "redirectUrl": "http://www.bing.com",
      "customBlockResponseStatusCode": 429,
      "customBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==",
      "requestBodyCheck": "Disabled",
      "logScrubbing": {
        "state": "Enabled",
        "scrubbingRules": [
          {
            "matchVariable": "RequestIPAddress",
            "selectorMatchOperator": "EqualsAny",
            "selector": null,
            "state": "Enabled"
          }
        ]
      }
    },
    "customRules": {
      "rules": [
        {
          "name": "Rule1",
          "priority": 1,
          "enabledState": "Enabled",
          "ruleType": "RateLimitRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 1000,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "IPMatch",
              "negateCondition": false,
              "matchValue": [
                "192.168.1.0/24",
                "10.0.0.0/24"
              ],
              "transforms": []
            }
          ],
          "action": "Block"
        },
        {
          "name": "Rule2",
          "priority": 2,
          "enabledState": "Enabled",
          "ruleType": "MatchRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 0,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "GeoMatch",
              "negateCondition": false,
              "matchValue": [
                "CH"
              ]
            },
            {
              "matchVariable": "RequestHeader",
              "selector": "UserAgent",
              "operator": "Contains",
              "negateCondition": false,
              "matchValue": [
                "windows"
              ],
              "transforms": [
                "Lowercase"
              ]
            }
          ],
          "action": "Block"
        }
      ]
    },
    "managedRules": {
      "managedRuleSets": [
        {
          "ruleSetType": "DefaultRuleSet",
          "ruleSetVersion": "1.0",
          "exclusions": [
            {
              "matchVariable": "RequestHeaderNames",
              "selectorMatchOperator": "Equals",
              "selector": "User-Agent"
            }
          ],
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "SQLI",
              "exclusions": [
                {
                  "matchVariable": "RequestCookieNames",
                  "selectorMatchOperator": "StartsWith",
                  "selector": "token"
                }
              ],
              "rules": [
                {
                  "ruleId": "942100",
                  "enabledState": "Enabled",
                  "action": "Redirect",
                  "exclusions": [
                    {
                      "matchVariable": "QueryStringArgNames",
                      "selectorMatchOperator": "Equals",
                      "selector": "query"
                    }
                  ]
                },
                {
                  "ruleId": "942110",
                  "enabledState": "Disabled"
                }
              ]
            }
          ]
        }
      ]
    },
    "frontendEndpointLinks": [],
    "securityPolicyLinks": []
  },
  "sku": {
    "name": "Classic_AzureFrontDoor"
  }
}
{
  "name": "Policy1",
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/Policy1",
  "type": "Microsoft.Network/frontdoorwebapplicationfirewallpolicies",
  "tags": {
    "key1": "value1",
    "key2": "value2"
  },
  "location": "WestUs",
  "properties": {
    "resourceState": "Enabled",
    "provisioningState": "Succeeded",
    "policySettings": {
      "enabledState": "Enabled",
      "mode": "Prevention",
      "redirectUrl": "http://www.bing.com",
      "customBlockResponseStatusCode": 429,
      "customBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==",
      "requestBodyCheck": "Disabled",
      "logScrubbing": {
        "state": "Enabled",
        "scrubbingRules": [
          {
            "matchVariable": "RequestIPAddress",
            "selectorMatchOperator": "EqualsAny",
            "selector": null,
            "state": "Enabled"
          }
        ]
      }
    },
    "customRules": {
      "rules": [
        {
          "name": "Rule1",
          "priority": 1,
          "enabledState": "Enabled",
          "ruleType": "RateLimitRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 1000,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "IPMatch",
              "negateCondition": false,
              "matchValue": [
                "192.168.1.0/24",
                "10.0.0.0/24"
              ],
              "transforms": []
            }
          ],
          "action": "Block"
        },
        {
          "name": "Rule2",
          "priority": 2,
          "enabledState": "Enabled",
          "ruleType": "MatchRule",
          "rateLimitDurationInMinutes": 0,
          "rateLimitThreshold": 0,
          "matchConditions": [
            {
              "matchVariable": "RemoteAddr",
              "selector": null,
              "operator": "GeoMatch",
              "negateCondition": false,
              "matchValue": [
                "CH"
              ]
            },
            {
              "matchVariable": "RequestHeader",
              "selector": "UserAgent",
              "operator": "Contains",
              "negateCondition": false,
              "matchValue": [
                "windows"
              ],
              "transforms": [
                "Lowercase"
              ]
            }
          ],
          "action": "Block"
        }
      ]
    },
    "managedRules": {
      "managedRuleSets": [
        {
          "ruleSetType": "DefaultRuleSet",
          "ruleSetVersion": "1.0",
          "ruleSetAction": "Block",
          "exclusions": [
            {
              "matchVariable": "RequestHeaderNames",
              "selectorMatchOperator": "Equals",
              "selector": "User-Agent"
            }
          ],
          "ruleGroupOverrides": [
            {
              "ruleGroupName": "SQLI",
              "exclusions": [
                {
                  "matchVariable": "RequestCookieNames",
                  "selectorMatchOperator": "StartsWith",
                  "selector": "token"
                }
              ],
              "rules": [
                {
                  "ruleId": "942100",
                  "enabledState": "Enabled",
                  "action": "Redirect",
                  "exclusions": [
                    {
                      "matchVariable": "QueryStringArgNames",
                      "selectorMatchOperator": "Equals",
                      "selector": "query"
                    }
                  ]
                },
                {
                  "ruleId": "942110",
                  "enabledState": "Disabled"
                }
              ]
            }
          ]
        }
      ]
    },
    "frontendEndpointLinks": [],
    "securityPolicyLinks": []
  },
  "sku": {
    "name": "Premium_AzureFrontDoor"
  }
}

定义

名称 说明
scrubbingRuleEntryMatchOperator

当 matchVariable 是集合时,对选择器执行操作以指定此规则应用于集合中的哪些元素。

scrubbingRuleEntryState

定义日志清理规则的状态。 启用默认值。

ActionType

定义要对规则匹配执行的操作。

CustomRule

定义 Web 应用程序规则的内容

CustomRuleEnabledState

描述自定义规则处于启用或禁用状态。 如果未指定,则默认为 Enabled。

CustomRuleList

定义自定义规则的内容

ErrorResponse

错误响应指示 Front Door 服务无法处理传入请求。 错误消息中提供了原因。

FrontendEndpointLink

定义前端终结点的资源 ID。

GroupByVariable

介绍可用于对速率限制请求进行分组的变量

ManagedRuleEnabledState

描述托管规则处于启用或禁用状态。

ManagedRuleExclusion

从托管规则评估中排除变量。

ManagedRuleExclusionMatchVariable

要排除的变量类型。

ManagedRuleExclusionSelectorMatchOperator

在指定此排除项应用于集合中的哪些元素时应用于选择器的比较运算符。

ManagedRuleGroupOverride

定义托管规则组替代设置。

ManagedRuleOverride

定义托管规则组替代设置。

ManagedRuleSet

定义托管规则集。

ManagedRuleSetActionType

定义满足托管规则集分数阈值时要执行的操作。

ManagedRuleSetList

定义策略的托管规则集列表。

MatchCondition

定义匹配条件。

MatchVariable

要与之比较的请求变量。

Operator

用于与变量值匹配的比较类型。

PolicyEnabledState

描述策略处于启用或禁用状态。 如果未指定,则默认为 Enabled。

PolicyMode

描述它是在策略级别处于检测模式还是阻止模式。

PolicyRequestBodyCheck

描述策略托管规则是否会检查请求正文内容。

PolicyResourceState

策略的资源状态。

PolicySettings

定义顶级 WebApplicationFirewallPolicy 配置设置。

RoutingRuleLink

定义路由规则的资源 ID。

RuleType

描述规则的类型。

scrubbingRuleEntryMatchVariable

要从日志中清理的变量。

SecurityPolicyLink

定义安全策略的资源 ID。

Sku

Web 应用程序防火墙策略的定价层。

SkuName

定价层的名称。

TransformType

描述在匹配之前应用了哪些转换。

VariableName

描述组支持的变量

WebApplicationFirewallPolicy

定义 Web 应用程序防火墙策略。

WebApplicationFirewallScrubbingRules

定义日志清理规则的内容。

WebApplicationFirewallScrubbingState

日志清理配置的状态。默认值为 Enabled。

scrubbingRuleEntryMatchOperator

当 matchVariable 是集合时,对选择器执行操作以指定此规则应用于集合中的哪些元素。

名称 类型 说明
Equals

string

EqualsAny

string

scrubbingRuleEntryState

定义日志清理规则的状态。 启用默认值。

名称 类型 说明
Disabled

string

Enabled

string

ActionType

定义要对规则匹配执行的操作。

名称 类型 说明
Allow

string

AnomalyScoring

string

Block

string

JSChallenge

string

Log

string

Redirect

string

CustomRule

定义 Web 应用程序规则的内容

名称 类型 说明
action

ActionType

描述规则匹配时要应用的操作。

enabledState

CustomRuleEnabledState

描述自定义规则处于启用或禁用状态。 如果未指定,则默认为 Enabled。

groupBy

GroupByVariable[]

描述用于对速率限制请求进行分组的变量列表

matchConditions

MatchCondition[]

匹配条件列表。

name

string

描述规则的名称。

priority

integer

描述规则的优先级。 值较低的规则将在具有较高值的规则之前进行评估。

rateLimitDurationInMinutes

integer

重置速率限制计数的时间窗口。 默认值为 1 分钟。

rateLimitThreshold

integer

时间范围内每个客户端允许的请求数。

ruleType

RuleType

描述规则的类型。

CustomRuleEnabledState

描述自定义规则处于启用或禁用状态。 如果未指定,则默认为 Enabled。

名称 类型 说明
Disabled

string

Enabled

string

CustomRuleList

定义自定义规则的内容

名称 类型 说明
rules

CustomRule[]

规则列表

ErrorResponse

错误响应指示 Front Door 服务无法处理传入请求。 错误消息中提供了原因。

名称 类型 说明
code

string

错误代码。

message

string

指示操作失败原因的错误消息。

定义前端终结点的资源 ID。

名称 类型 说明
id

string

资源 ID。

GroupByVariable

介绍可用于对速率限制请求进行分组的变量

名称 类型 说明
variableName

VariableName

介绍分组依据支持的变量

ManagedRuleEnabledState

描述托管规则处于启用或禁用状态。

名称 类型 说明
Disabled

string

Enabled

string

ManagedRuleExclusion

从托管规则评估中排除变量。

名称 类型 说明
matchVariable

ManagedRuleExclusionMatchVariable

要排除的变量类型。

selector

string

此排除项适用于集合中哪些元素的选择器值。

selectorMatchOperator

ManagedRuleExclusionSelectorMatchOperator

在指定此排除项应用于集合中的哪些元素时应用于选择器的比较运算符。

ManagedRuleExclusionMatchVariable

要排除的变量类型。

名称 类型 说明
QueryStringArgNames

string

RequestBodyJsonArgNames

string

RequestBodyPostArgNames

string

RequestCookieNames

string

RequestHeaderNames

string

ManagedRuleExclusionSelectorMatchOperator

在指定此排除项应用于集合中的哪些元素时应用于选择器的比较运算符。

名称 类型 说明
Contains

string

EndsWith

string

Equals

string

EqualsAny

string

StartsWith

string

ManagedRuleGroupOverride

定义托管规则组替代设置。

名称 类型 说明
exclusions

ManagedRuleExclusion[]

描述应用于组中的所有规则的排除项。

ruleGroupName

string

描述要替代的托管规则组。

rules

ManagedRuleOverride[]

将禁用的规则列表。 如果未指定任何规则,则将禁用组中的所有规则。

ManagedRuleOverride

定义托管规则组替代设置。

名称 类型 说明
action

ActionType

描述在规则匹配时要应用的替代操作。

enabledState

ManagedRuleEnabledState

描述托管规则处于启用或禁用状态。 如果未指定,则默认为 Disabled。

exclusions

ManagedRuleExclusion[]

描述应用于此特定规则的排除项。

ruleId

string

托管规则的标识符。

ManagedRuleSet

定义托管规则集。

名称 类型 说明
exclusions

ManagedRuleExclusion[]

描述应用于集中所有规则的排除项。

ruleGroupOverrides

ManagedRuleGroupOverride[]

定义要应用于规则集的规则组替代。

ruleSetAction

ManagedRuleSetActionType

ruleSetAction
定义规则集操作。

ruleSetType

string

定义要使用的规则集类型。

ruleSetVersion

string

定义要使用的规则集的版本。

ManagedRuleSetActionType

定义满足托管规则集分数阈值时要执行的操作。

名称 类型 说明
Block

string

Log

string

Redirect

string

ManagedRuleSetList

定义策略的托管规则集列表。

名称 类型 说明
managedRuleSets

ManagedRuleSet[]

规则集列表。

MatchCondition

定义匹配条件。

名称 类型 说明
matchValue

string[]

可能的匹配值列表。

matchVariable

MatchVariable

要与之进行比较的请求变量。

negateCondition

boolean

描述是否应否定此条件的结果。

operator

Operator

用于与变量值匹配的比较类型。

selector

string

匹配 QueryString、PostArgs、RequestHeader 或 Cookies 变量中的特定键。 默认值为 null。

transforms

TransformType[]

转换列表。

MatchVariable

要与之比较的请求变量。

名称 类型 说明
Cookies

string

PostArgs

string

QueryString

string

RemoteAddr

string

RequestBody

string

RequestHeader

string

RequestMethod

string

RequestUri

string

SocketAddr

string

Operator

用于与变量值匹配的比较类型。

名称 类型 说明
Any

string

BeginsWith

string

Contains

string

EndsWith

string

Equal

string

GeoMatch

string

GreaterThan

string

GreaterThanOrEqual

string

IPMatch

string

LessThan

string

LessThanOrEqual

string

RegEx

string

PolicyEnabledState

描述策略处于启用或禁用状态。 如果未指定,则默认为 Enabled。

名称 类型 说明
Disabled

string

Enabled

string

PolicyMode

描述它是在策略级别处于检测模式还是阻止模式。

名称 类型 说明
Detection

string

Prevention

string

PolicyRequestBodyCheck

描述策略托管规则是否会检查请求正文内容。

名称 类型 说明
Disabled

string

Enabled

string

PolicyResourceState

策略的资源状态。

名称 类型 说明
Creating

string

Deleting

string

Disabled

string

Disabling

string

Enabled

string

Enabling

string

PolicySettings

定义顶级 WebApplicationFirewallPolicy 配置设置。

名称 类型 说明
customBlockResponseBody

string

如果操作类型为阻止,则客户可以替代响应正文。 正文必须在 base64 编码中指定。

customBlockResponseStatusCode

integer

如果操作类型为阻止,客户可以替代响应状态代码。

enabledState

PolicyEnabledState

描述策略处于启用或禁用状态。 如果未指定,则默认为 Enabled。

javascriptChallengeExpirationInMinutes

integer

定义 JavaScript 质询 Cookie 有效期(以分钟为单位)。 此设置仅适用于Premium_AzureFrontDoor。 值必须是介于 5 和 1440 之间的整数,默认值为 30。

logScrubbing.scrubbingRules

WebApplicationFirewallScrubbingRules[]

应用于Web 应用程序防火墙日志的日志清理规则列表。

logScrubbing.state

WebApplicationFirewallScrubbingState

日志清理配置的状态。默认值为 Enabled。

mode

PolicyMode

描述它是在策略级别处于检测模式还是阻止模式。

redirectUrl

string

如果操作类型为 redirect,则此字段表示客户端的重定向 URL。

requestBodyCheck

PolicyRequestBodyCheck

描述策略托管规则是否会检查请求正文内容。

定义路由规则的资源 ID。

名称 类型 说明
id

string

资源 ID。

RuleType

描述规则的类型。

名称 类型 说明
MatchRule

string

RateLimitRule

string

scrubbingRuleEntryMatchVariable

要从日志中清理的变量。

名称 类型 说明
QueryStringArgNames

string

RequestBodyJsonArgNames

string

RequestBodyPostArgNames

string

RequestCookieNames

string

RequestHeaderNames

string

RequestIPAddress

string

RequestUri

string

定义安全策略的资源 ID。

名称 类型 说明
id

string

资源 ID。

Sku

Web 应用程序防火墙策略的定价层。

名称 类型 说明
name

SkuName

定价层的名称。

SkuName

定价层的名称。

名称 类型 说明
Classic_AzureFrontDoor

string

Premium_AzureFrontDoor

string

Standard_AzureFrontDoor

string

TransformType

描述在匹配之前应用了哪些转换。

名称 类型 说明
Lowercase

string

RemoveNulls

string

Trim

string

Uppercase

string

UrlDecode

string

UrlEncode

string

VariableName

描述组支持的变量

名称 类型 说明
GeoLocation

string

None

string

SocketAddr

string

WebApplicationFirewallPolicy

定义 Web 应用程序防火墙策略。

名称 类型 说明
etag

string

获取一个唯一的只读字符串,每当资源更新时,该字符串都会更改。

id

string

资源 ID。

location

string

资源位置。

name

string

资源名称。

properties.customRules

CustomRuleList

描述策略中的自定义规则。

properties.frontendEndpointLinks

FrontendEndpointLink[]

描述与此Web 应用程序防火墙策略关联的前端终结点。

properties.managedRules

ManagedRuleSetList

描述策略中的托管规则。

properties.policySettings

PolicySettings

描述策略的设置。

properties.provisioningState

string

策略的预配状态。

properties.resourceState

PolicyResourceState

策略的资源状态。

properties.routingRuleLinks

RoutingRuleLink[]

介绍与此Web 应用程序防火墙策略关联的路由规则。

properties.securityPolicyLinks

SecurityPolicyLink[]

描述与此Web 应用程序防火墙策略关联的安全策略。

sku

Sku

Web 应用程序防火墙策略的定价层。 如果未指定,则默认为 Classic_AzureFrontDoor。

tags

object

资源标记。

type

string

资源类型。

WebApplicationFirewallScrubbingRules

定义日志清理规则的内容。

名称 类型 说明
matchVariable

scrubbingRuleEntryMatchVariable

要从日志中清理的变量。

selector

string

当 matchVariable 是集合时,运算符用于指定此规则应用于集合中的哪些元素。

selectorMatchOperator

scrubbingRuleEntryMatchOperator

当 matchVariable 是集合时,对选择器执行操作以指定此规则应用于集合中的哪些元素。

state

scrubbingRuleEntryState

定义日志清理规则的状态。 启用默认值。

WebApplicationFirewallScrubbingState

日志清理配置的状态。默认值为 Enabled。

名称 类型 说明
Disabled

string

Enabled

string