你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft.Network ApplicationGatewayWebApplicationFirewallPolicies 2021-08-01
可以使用目标操作部署 ApplicationGatewayWebApplicationFirewallPolicies 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-08-01' = {
location: 'string'
name: 'string'
properties: {
customRules: [
{
action: 'string'
matchConditions: [
{
matchValues: [
'string'
]
matchVariables: [
{
selector: 'string'
variableName: 'string'
}
]
negationConditon: bool
operator: 'string'
transforms: [
'string'
]
}
]
name: 'string'
priority: int
ruleType: 'string'
}
]
managedRules: {
exclusions: [
{
exclusionManagedRuleSets: [
{
ruleGroups: [
{
ruleGroupName: 'string'
rules: [
{
ruleId: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
matchVariable: 'string'
selector: 'string'
selectorMatchOperator: 'string'
}
]
managedRuleSets: [
{
ruleGroupOverrides: [
{
ruleGroupName: 'string'
rules: [
{
ruleId: 'string'
state: 'string'
}
]
}
]
ruleSetType: 'string'
ruleSetVersion: 'string'
}
]
}
policySettings: {
fileUploadLimitInMb: int
maxRequestBodySizeInKb: int
mode: 'string'
requestBodyCheck: bool
state: 'string'
}
}
tags: {
{customized property}: 'string'
}
}
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要排除的托管规则组。 | string (必需) |
规则 | 将排除的规则列表。 如果未指定任何规则,将排除组中的所有规则。 | ExclusionManagedRule[] |
名字 | 描述 | 价值 |
---|---|---|
ruleGroups | 定义要应用于规则集的规则组。 | ExclusionManagedRuleGroup[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要重写的托管规则组。 | string (必需) |
规则 | 将禁用的规则列表。 如果未指定任何规则,将禁用组中的所有规则。 | ManagedRuleOverride[] |
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
州 | 托管规则的状态。 如果未指定,则默认为 Disabled。 | “Disabled” |
名字 | 描述 | 价值 |
---|---|---|
排除 | 应用于策略的排除项。 | OwaspCrsExclusionEntry[] |
managedRuleSets | 与策略关联的托管规则集。 | ManagedRuleSet[] (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | 定义要应用于规则集的规则组替代。 | ManagedRuleGroupOverride[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
matchValues | 匹配值。 | string[] (必需) |
matchVariables | 匹配变量的列表。 | MatchVariable[] (必需) |
negationConditon | 这是否为否定条件。 | bool |
算子 | 要匹配的运算符。 | “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual” “正则表达式”(必需) |
变换 | 转换列表。 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “UrlDecode” “UrlEncode” |
名字 | 描述 | 价值 |
---|---|---|
选择器 | 匹配变量的选择器。 | 字符串 |
variableName | 匹配变量。 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestCookies” “RequestHeaders” “RequestMethod” “RequestUri”(必需) |
名字 | 描述 | 价值 |
---|---|---|
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
名字 | 描述 | 价值 |
---|---|---|
exclusionManagedRuleSets | 与排除关联的托管规则集。 | ExclusionManagedRuleSet[] |
matchVariable | 要排除的变量。 | “RequestArgKeys” “RequestArgNames” “RequestArgValues” “RequestCookieKeys” “RequestCookieNames” “RequestCookieValues” “RequestHeaderKeys” “RequestHeaderNames” “RequestHeaderValues”(必需) |
选择器 | matchVariable 是集合时,运算符用于指定此排除项应用于的集合中的哪些元素。 | string (必需) |
selectorMatchOperator | 如果 matchVariable 是集合,请对选择器进行操作,以指定此排除项应用于的集合中的哪些元素。 | “Contains” “EndsWith” “Equals” “EqualsAny” “StartsWith”(必需) |
名字 | 描述 | 价值 |
---|---|---|
fileUploadLimitInMb | WAF 的最大文件上传大小(以 Mb 为单位)。 | int 约束: 最小值 = 0 |
maxRequestBodySizeInKb | WAF 的最大请求正文大小(以 Kb 为单位)。 | int 约束: 最小值 = 8 |
模式 | 策略的模式。 | “检测” “预防” |
requestBodyCheck | 是否允许 WAF 检查请求正文。 | bool |
州 | 策略的状态。 | “Disabled” “Enabled” |
名字 | 描述 | 价值 |
---|
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作的类型。 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表。 | MatchCondition[] (必需) |
名字 | 策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 规则的优先级。 在具有较高值的规则之前,将评估具有较低值的规则。 | int (必需) |
ruleType | 规则类型。 | “Invalid” “MatchRule”(必需) |
名字 | 描述 | 价值 |
---|---|---|
customRules | 策略中的自定义规则。 | WebApplicationFirewallCustomRule[] |
managedRules | 描述 managedRules 结构。 | ManagedRulesDefinition (必需) |
policySettings | 策略的 PolicySettings。 | PolicySettings |
以下快速入门示例部署此资源类型。
Bicep 文件 | 描述 |
---|---|
使用 NAT 网关和应用程序网关 |
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。 |
使用应用程序网关入口控制器 |
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集 |
使用 WAF 和防火墙策略 |
此模板创建配置了 WAF 的应用程序网关以及防火墙策略 |
在 Azure 应用程序网关上创建 Azure WAF v2 | 此模板在 Azure 应用程序网关上创建一个 Azure Web 应用程序防火墙 v2,并在后端池中使用两台 Windows Server 2016 服务器 |
使用应用程序网关源 Front Door 标准版/高级版 | 此模板创建 Front Door 标准版/高级版和应用程序网关实例,并使用 NSG 和 WAF 策略来验证流量是否通过 Front Door 源。 |
使用容器实例和应用程序网关 |
此模板使用容器组和应用程序网关创建 Front Door 标准版/高级版。 |
可以使用目标操作部署 ApplicationGatewayWebApplicationFirewallPolicies 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies",
"apiVersion": "2021-08-01",
"name": "string",
"location": "string",
"properties": {
"customRules": [
{
"action": "string",
"matchConditions": [
{
"matchValues": [ "string" ],
"matchVariables": [
{
"selector": "string",
"variableName": "string"
}
],
"negationConditon": "bool",
"operator": "string",
"transforms": [ "string" ]
}
],
"name": "string",
"priority": "int",
"ruleType": "string"
}
],
"managedRules": {
"exclusions": [
{
"exclusionManagedRuleSets": [
{
"ruleGroups": [
{
"ruleGroupName": "string",
"rules": [
{
"ruleId": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
],
"matchVariable": "string",
"selector": "string",
"selectorMatchOperator": "string"
}
],
"managedRuleSets": [
{
"ruleGroupOverrides": [
{
"ruleGroupName": "string",
"rules": [
{
"ruleId": "string",
"state": "string"
}
]
}
],
"ruleSetType": "string",
"ruleSetVersion": "string"
}
]
},
"policySettings": {
"fileUploadLimitInMb": "int",
"maxRequestBodySizeInKb": "int",
"mode": "string",
"requestBodyCheck": "bool",
"state": "string"
}
},
"tags": {
"{customized property}": "string"
}
}
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要排除的托管规则组。 | string (必需) |
规则 | 将排除的规则列表。 如果未指定任何规则,将排除组中的所有规则。 | ExclusionManagedRule[] |
名字 | 描述 | 价值 |
---|---|---|
ruleGroups | 定义要应用于规则集的规则组。 | ExclusionManagedRuleGroup[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要重写的托管规则组。 | string (必需) |
规则 | 将禁用的规则列表。 如果未指定任何规则,将禁用组中的所有规则。 | ManagedRuleOverride[] |
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
州 | 托管规则的状态。 如果未指定,则默认为 Disabled。 | “Disabled” |
名字 | 描述 | 价值 |
---|---|---|
排除 | 应用于策略的排除项。 | OwaspCrsExclusionEntry[] |
managedRuleSets | 与策略关联的托管规则集。 | ManagedRuleSet[] (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | 定义要应用于规则集的规则组替代。 | ManagedRuleGroupOverride[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
matchValues | 匹配值。 | string[] (必需) |
matchVariables | 匹配变量的列表。 | MatchVariable[] (必需) |
negationConditon | 这是否为否定条件。 | bool |
算子 | 要匹配的运算符。 | “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual” “正则表达式”(必需) |
变换 | 转换列表。 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “UrlDecode” “UrlEncode” |
名字 | 描述 | 价值 |
---|---|---|
选择器 | 匹配变量的选择器。 | 字符串 |
variableName | 匹配变量。 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestCookies” “RequestHeaders” “RequestMethod” “RequestUri”(必需) |
名字 | 描述 | 价值 |
---|---|---|
apiVersion | API 版本 | '2021-08-01' |
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
类型 | 资源类型 | “Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies” |
名字 | 描述 | 价值 |
---|---|---|
exclusionManagedRuleSets | 与排除关联的托管规则集。 | ExclusionManagedRuleSet[] |
matchVariable | 要排除的变量。 | “RequestArgKeys” “RequestArgNames” “RequestArgValues” “RequestCookieKeys” “RequestCookieNames” “RequestCookieValues” “RequestHeaderKeys” “RequestHeaderNames” “RequestHeaderValues”(必需) |
选择器 | matchVariable 是集合时,运算符用于指定此排除项应用于的集合中的哪些元素。 | string (必需) |
selectorMatchOperator | 如果 matchVariable 是集合,请对选择器进行操作,以指定此排除项应用于的集合中的哪些元素。 | “Contains” “EndsWith” “Equals” “EqualsAny” “StartsWith”(必需) |
名字 | 描述 | 价值 |
---|---|---|
fileUploadLimitInMb | WAF 的最大文件上传大小(以 Mb 为单位)。 | int 约束: 最小值 = 0 |
maxRequestBodySizeInKb | WAF 的最大请求正文大小(以 Kb 为单位)。 | int 约束: 最小值 = 8 |
模式 | 策略的模式。 | “检测” “预防” |
requestBodyCheck | 是否允许 WAF 检查请求正文。 | bool |
州 | 策略的状态。 | “Disabled” “Enabled” |
名字 | 描述 | 价值 |
---|
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作的类型。 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表。 | MatchCondition[] (必需) |
名字 | 策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 规则的优先级。 在具有较高值的规则之前,将评估具有较低值的规则。 | int (必需) |
ruleType | 规则类型。 | “Invalid” “MatchRule”(必需) |
名字 | 描述 | 价值 |
---|---|---|
customRules | 策略中的自定义规则。 | WebApplicationFirewallCustomRule[] |
managedRules | 描述 managedRules 结构。 | ManagedRulesDefinition (必需) |
policySettings | 策略的 PolicySettings。 | PolicySettings |
以下快速入门模板部署此资源类型。
模板 | 描述 |
---|---|
使用 NAT 网关和应用程序网关 |
此示例演示如何使用 NAT 网关部署 AKS 群集进行出站连接,以及如何为入站连接部署应用程序网关。 |
使用应用程序网关入口控制器 |
此示例演示如何使用应用程序网关、应用程序网关入口控制器、Azure 容器注册表、Log Analytics 和 Key Vault 部署 AKS 群集 |
使用 WAF 和防火墙策略 |
此模板创建配置了 WAF 的应用程序网关以及防火墙策略 |
在 Azure 应用程序网关上创建 Azure WAF v2 |
此模板在 Azure 应用程序网关上创建一个 Azure Web 应用程序防火墙 v2,并在后端池中使用两台 Windows Server 2016 服务器 |
使用应用程序网关源 Front Door 标准版/高级版 |
此模板创建 Front Door 标准版/高级版和应用程序网关实例,并使用 NSG 和 WAF 策略来验证流量是否通过 Front Door 源。 |
使用容器实例和应用程序网关 |
此模板使用容器组和应用程序网关创建 Front Door 标准版/高级版。 |
可以使用目标操作部署 ApplicationGatewayWebApplicationFirewallPolicies 资源类型:
- 资源组
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-08-01"
name = "string"
location = "string"
body = jsonencode({
properties = {
customRules = [
{
action = "string"
matchConditions = [
{
matchValues = [
"string"
]
matchVariables = [
{
selector = "string"
variableName = "string"
}
]
negationConditon = bool
operator = "string"
transforms = [
"string"
]
}
]
name = "string"
priority = int
ruleType = "string"
}
]
managedRules = {
exclusions = [
{
exclusionManagedRuleSets = [
{
ruleGroups = [
{
ruleGroupName = "string"
rules = [
{
ruleId = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
matchVariable = "string"
selector = "string"
selectorMatchOperator = "string"
}
]
managedRuleSets = [
{
ruleGroupOverrides = [
{
ruleGroupName = "string"
rules = [
{
ruleId = "string"
state = "string"
}
]
}
]
ruleSetType = "string"
ruleSetVersion = "string"
}
]
}
policySettings = {
fileUploadLimitInMb = int
maxRequestBodySizeInKb = int
mode = "string"
requestBodyCheck = bool
state = "string"
}
}
})
tags = {
{customized property} = "string"
}
}
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要排除的托管规则组。 | string (必需) |
规则 | 将排除的规则列表。 如果未指定任何规则,将排除组中的所有规则。 | ExclusionManagedRule[] |
名字 | 描述 | 价值 |
---|---|---|
ruleGroups | 定义要应用于规则集的规则组。 | ExclusionManagedRuleGroup[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupName | 要重写的托管规则组。 | string (必需) |
规则 | 将禁用的规则列表。 如果未指定任何规则,将禁用组中的所有规则。 | ManagedRuleOverride[] |
名字 | 描述 | 价值 |
---|---|---|
ruleId | 托管规则的标识符。 | string (必需) |
州 | 托管规则的状态。 如果未指定,则默认为 Disabled。 | “Disabled” |
名字 | 描述 | 价值 |
---|---|---|
排除 | 应用于策略的排除项。 | OwaspCrsExclusionEntry[] |
managedRuleSets | 与策略关联的托管规则集。 | ManagedRuleSet[] (必需) |
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | 定义要应用于规则集的规则组替代。 | ManagedRuleGroupOverride[] |
ruleSetType | 定义要使用的规则集类型。 | string (必需) |
ruleSetVersion | 定义要使用的规则集的版本。 | string (必需) |
名字 | 描述 | 价值 |
---|---|---|
matchValues | 匹配值。 | string[] (必需) |
matchVariables | 匹配变量的列表。 | MatchVariable[] (必需) |
negationConditon | 这是否为否定条件。 | bool |
算子 | 要匹配的运算符。 | “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual” “正则表达式”(必需) |
变换 | 转换列表。 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “UrlDecode” “UrlEncode” |
名字 | 描述 | 价值 |
---|---|---|
选择器 | 匹配变量的选择器。 | 字符串 |
variableName | 匹配变量。 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestCookies” “RequestHeaders” “RequestMethod” “RequestUri”(必需) |
名字 | 描述 | 价值 |
---|---|---|
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 |
类型 | 资源类型 | “Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies@2021-08-01” |
名字 | 描述 | 价值 |
---|---|---|
exclusionManagedRuleSets | 与排除关联的托管规则集。 | ExclusionManagedRuleSet[] |
matchVariable | 要排除的变量。 | “RequestArgKeys” “RequestArgNames” “RequestArgValues” “RequestCookieKeys” “RequestCookieNames” “RequestCookieValues” “RequestHeaderKeys” “RequestHeaderNames” “RequestHeaderValues”(必需) |
选择器 | matchVariable 是集合时,运算符用于指定此排除项应用于的集合中的哪些元素。 | string (必需) |
selectorMatchOperator | 如果 matchVariable 是集合,请对选择器进行操作,以指定此排除项应用于的集合中的哪些元素。 | “Contains” “EndsWith” “Equals” “EqualsAny” “StartsWith”(必需) |
名字 | 描述 | 价值 |
---|---|---|
fileUploadLimitInMb | WAF 的最大文件上传大小(以 Mb 为单位)。 | int 约束: 最小值 = 0 |
maxRequestBodySizeInKb | WAF 的最大请求正文大小(以 Kb 为单位)。 | int 约束: 最小值 = 8 |
模式 | 策略的模式。 | “检测” “预防” |
requestBodyCheck | 是否允许 WAF 检查请求正文。 | bool |
州 | 策略的状态。 | “Disabled” “Enabled” |
名字 | 描述 | 价值 |
---|
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作的类型。 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表。 | MatchCondition[] (必需) |
名字 | 策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 规则的优先级。 在具有较高值的规则之前,将评估具有较低值的规则。 | int (必需) |
ruleType | 规则类型。 | “Invalid” “MatchRule”(必需) |
名字 | 描述 | 价值 |
---|---|---|
customRules | 策略中的自定义规则。 | WebApplicationFirewallCustomRule[] |
managedRules | 描述 managedRules 结构。 | ManagedRulesDefinition (必需) |
policySettings | 策略的 PolicySettings。 | PolicySettings |