你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Microsoft.Network FrontDoorWebApplicationFirewallPolicies 2018-08-01
Bicep 资源定义
可以使用目标操作部署 FrontDoorWebApplicationFirewallPolicies 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Network/FrontDoorWebApplicationFirewallPolicies 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.Network/FrontDoorWebApplicationFirewallPolicies@2018-08-01' = {
etag: 'string'
location: 'string'
name: 'string'
properties: {
customRules: {
rules: [
{
action: 'string'
matchConditions: [
{
matchValue: [
'string'
]
matchVariable: 'string'
negateCondition: bool
operator: 'string'
selector: 'string'
}
]
name: 'string'
priority: int
rateLimitDurationInMinutes: int
rateLimitThreshold: int
ruleType: 'string'
transforms: [
'string'
]
}
]
}
managedRules: {
ruleSets: [
{
priority: int
version: int
ruleSetType: 'string'
// For remaining properties, see ManagedRuleSet objects
}
]
}
policySettings: {
enabledState: 'string'
mode: 'string'
}
}
tags: {
{customized property}: 'string'
}
}
ManagedRuleSet 对象
设置 ruleSetType 属性以指定对象的类型。
对于 AzureManagedRuleSet,请使用:
{
ruleGroupOverrides: [
{
action: 'string'
ruleGroupOverride: 'string'
}
]
ruleSetType: 'AzureManagedRuleSet'
}
属性值
AzureManagedOverrideRuleGroup
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
ruleGroupOverride | 描述重写规则组 | “SqlInjection” “XSS”(必需) |
AzureManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | Azure 托管提供程序替代配置列表(可选) | AzureManagedOverrideRuleGroup[] |
ruleSetType | RuleSetType - AzureManagedRuleSet 或 OWASP RuleSets。 | “AzureManagedRuleSet”(必需) |
CustomRule
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表 | MatchConditionAutoGenerated[] (必需) |
名字 | 获取策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 描述规则的优先级。 在具有较高值的规则之前,将评估值较低的规则 | int (必需) |
rateLimitDurationInMinutes | 定义速率限制持续时间。 默认值 - 1 分钟 | int |
rateLimitThreshold | 定义速率限制阈值 | int |
ruleType | 描述规则的类型 | “MatchRule” “RateLimitRule”(必需) |
变换 | 转换列表 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “大写” “UrlDecode” “UrlEncode” |
CustomRules
名字 | 描述 | 价值 |
---|---|---|
规则 | 规则列表 | CustomRule[] |
ManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
优先权 | 描述规则的优先级 | int |
ruleSetType | 对于 AzureManagedRuleSet,请设置为“AzureManagedRuleSet”。 | “AzureManagedRuleSet”(必需) |
版本 | 定义规则集的版本 | int |
ManagedRuleSets
名字 | 描述 | 价值 |
---|---|---|
ruleSets | 规则列表 | ManagedRuleSet[] |
MatchConditionAutoGenerated
名字 | 描述 | 价值 |
---|---|---|
matchValue | 匹配值 | string[] (必需) |
matchVariable | 匹配变量 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestHeader” “RequestMethod” “RequestUri”(必需) |
negateCondition | 描述这是否为否定条件 | bool |
算子 | 描述要匹配的运算符 | “Any” “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual”(必需) |
选择器 | 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 | 字符串 |
Microsoft.Network/FrontDoorWebApplicationFirewallPolicies
名字 | 描述 | 价值 |
---|---|---|
etag | 获取在更新资源时更改的唯一只读字符串。 | 字符串 |
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
PolicySettings
名字 | 描述 | 价值 |
---|---|---|
enabledState | 描述策略是否处于启用状态或禁用状态 | “Disabled” “Enabled” |
模式 | 描述它在策略级别是否处于检测模式或预防模式 | “检测” “预防” |
ResourceTags
名字 | 描述 | 价值 |
---|
WebApplicationFirewallPolicyPropertiesFormat
名字 | 描述 | 价值 |
---|---|---|
customRules | 描述策略中的自定义规则 | CustomRules |
managedRules | 描述策略中的托管规则 | ManagedRuleSets |
policySettings | 描述策略的 policySettings | PolicySettings |
快速入门示例
以下快速入门示例部署此资源类型。
Bicep 文件 | 描述 |
---|---|
为 Azure Front Door 配置 WAF 托管 defaultRuleSet | 此模板配置适用于 Azure Front Door 的 WAF 托管 defaultRuleSet |
使用 blob 源和专用链接 |
此模板创建 Front Door Premium 和 Azure 存储 Blob 容器,并使用 Front Door 的专用终结点将流量发送到存储帐户。 |
使用 WAF 和Microsoft托管的规则集 |
此模板创建一个 Front Door Premium,其中包括具有Microsoft托管的默认和机器人保护规则集的 Web 应用程序防火墙。 |
使用异地筛选 |
此模板创建 Front Door 标准版/高级版,包括具有地理筛选规则的 Web 应用程序防火墙。 |
Front Door 标准版/高级版,速率限制为 | 此模板创建 Front Door 标准版/高级版,包括具有速率限制规则的 Web 应用程序防火墙。 |
使用 WAF 和自定义规则 |
此模板创建 Front Door 标准版/高级版,包括具有自定义规则的 Web 应用程序防火墙。 |
使用 blob 上传 的 blob 源 |
此模板创建一个 Front Door,其中包含源、路由和 ruleSet,以及一个包含 Blob 容器的 Azure 存储帐户。 Front Door 在上传文件时向存储帐户发送流量。 |
使用 WAF、域和日志将 FrontDoor CDN EventHub | 此模板创建新的 Azure FrontDoor cdn 配置文件。 使用自定义和托管规则、cdn 路由、源和组与 WAF 和路由关联创建 WAF,配置自定义域,创建事件中心和诊断设置,以便使用事件中心发送 CDN 访问日志。 |
受 Azure Frontdoor 保护的 |
此模板允许部署受 Azure Frontdoor 高级版保护并发布的 Azure 高级函数。 Azure Frontdoor 和 Azure Functions 之间的连接受 Azure 专用链接的保护。 |
ARM 模板资源定义
可以使用目标操作部署 FrontDoorWebApplicationFirewallPolicies 资源类型:
- 资源组 - 请参阅 资源组部署命令
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Network/FrontDoorWebApplicationFirewallPolicies 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.Network/FrontDoorWebApplicationFirewallPolicies",
"apiVersion": "2018-08-01",
"name": "string",
"etag": "string",
"location": "string",
"properties": {
"customRules": {
"rules": [
{
"action": "string",
"matchConditions": [
{
"matchValue": [ "string" ],
"matchVariable": "string",
"negateCondition": "bool",
"operator": "string",
"selector": "string"
}
],
"name": "string",
"priority": "int",
"rateLimitDurationInMinutes": "int",
"rateLimitThreshold": "int",
"ruleType": "string",
"transforms": [ "string" ]
}
]
},
"managedRules": {
"ruleSets": [ {
"priority": "int",
"version": "int",
"ruleSetType": "string"
// For remaining properties, see ManagedRuleSet objects
} ]
},
"policySettings": {
"enabledState": "string",
"mode": "string"
}
},
"tags": {
"{customized property}": "string"
}
}
ManagedRuleSet 对象
设置 ruleSetType 属性以指定对象的类型。
对于 AzureManagedRuleSet,请使用:
{
"ruleGroupOverrides": [
{
"action": "string",
"ruleGroupOverride": "string"
}
],
"ruleSetType": "AzureManagedRuleSet"
}
属性值
AzureManagedOverrideRuleGroup
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
ruleGroupOverride | 描述重写规则组 | “SqlInjection” “XSS”(必需) |
AzureManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | Azure 托管提供程序替代配置列表(可选) | AzureManagedOverrideRuleGroup[] |
ruleSetType | RuleSetType - AzureManagedRuleSet 或 OWASP RuleSets。 | “AzureManagedRuleSet”(必需) |
CustomRule
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表 | MatchConditionAutoGenerated[] (必需) |
名字 | 获取策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 描述规则的优先级。 在具有较高值的规则之前,将评估值较低的规则 | int (必需) |
rateLimitDurationInMinutes | 定义速率限制持续时间。 默认值 - 1 分钟 | int |
rateLimitThreshold | 定义速率限制阈值 | int |
ruleType | 描述规则的类型 | “MatchRule” “RateLimitRule”(必需) |
变换 | 转换列表 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “大写” “UrlDecode” “UrlEncode” |
CustomRules
名字 | 描述 | 价值 |
---|---|---|
规则 | 规则列表 | CustomRule[] |
ManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
优先权 | 描述规则的优先级 | int |
ruleSetType | 对于 AzureManagedRuleSet,请设置为“AzureManagedRuleSet”。 | “AzureManagedRuleSet”(必需) |
版本 | 定义规则集的版本 | int |
ManagedRuleSets
名字 | 描述 | 价值 |
---|---|---|
ruleSets | 规则列表 | ManagedRuleSet[] |
MatchConditionAutoGenerated
名字 | 描述 | 价值 |
---|---|---|
matchValue | 匹配值 | string[] (必需) |
matchVariable | 匹配变量 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestHeader” “RequestMethod” “RequestUri”(必需) |
negateCondition | 描述这是否为否定条件 | bool |
算子 | 描述要匹配的运算符 | “Any” “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual”(必需) |
选择器 | 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 | 字符串 |
Microsoft.Network/FrontDoorWebApplicationFirewallPolicies
名字 | 描述 | 价值 |
---|---|---|
apiVersion | API 版本 | '2018-08-01' |
etag | 获取在更新资源时更改的唯一只读字符串。 | 字符串 |
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 请参阅模板 中的 |
类型 | 资源类型 | “Microsoft.Network/FrontDoorWebApplicationFirewallPolicies” |
PolicySettings
名字 | 描述 | 价值 |
---|---|---|
enabledState | 描述策略是否处于启用状态或禁用状态 | “Disabled” “Enabled” |
模式 | 描述它在策略级别是否处于检测模式或预防模式 | “检测” “预防” |
ResourceTags
名字 | 描述 | 价值 |
---|
WebApplicationFirewallPolicyPropertiesFormat
名字 | 描述 | 价值 |
---|---|---|
customRules | 描述策略中的自定义规则 | CustomRules |
managedRules | 描述策略中的托管规则 | ManagedRuleSets |
policySettings | 描述策略的 policySettings | PolicySettings |
快速入门模板
以下快速入门模板部署此资源类型。
模板 | 描述 |
---|---|
为 Azure Front Door 配置 WAF 客户端 IP 限制 |
此模板为 Azure Front Door 终结点配置 WAF 客户端 IP 限制 |
为 Azure Front Door 配置 WAF 托管 defaultRuleSet |
此模板配置适用于 Azure Front Door 的 WAF 托管 defaultRuleSet |
为 Azure Front Door 终结点配置 WAF 速率限制规则 |
此模板为 Azure Front Door 配置 WAF 规则,以对给定前端主机的传入流量进行速率限制。 |
为 Front Door 配置 HTTP 参数的 WAF 规则 |
此模板基于 Azure Front Door 终结点的特定 http 参数配置 WAF 自定义规则。 |
在 Azure API 管理 前创建 Azure Front Door |
此示例演示如何在 Azure API 管理之前将 Azure Front Door 用作全局负载均衡器。 |
为 Azure Front Door 终结点创建 WAF 地理筛选规则 |
此模板为 Azure Front Door 创建 WAF 地理筛选规则,该规则允许/阻止来自某些国家的流量。 |
使用 blob 源和专用链接 |
此模板创建 Front Door Premium 和 Azure 存储 Blob 容器,并使用 Front Door 的专用终结点将流量发送到存储帐户。 |
使用 WAF 和Microsoft托管的规则集 |
此模板创建一个 Front Door Premium,其中包括具有Microsoft托管的默认和机器人保护规则集的 Web 应用程序防火墙。 |
使用异地筛选 |
此模板创建 Front Door 标准版/高级版,包括具有地理筛选规则的 Web 应用程序防火墙。 |
Front Door 标准版/高级版,速率限制为 |
此模板创建 Front Door 标准版/高级版,包括具有速率限制规则的 Web 应用程序防火墙。 |
使用 WAF 和自定义规则 |
此模板创建 Front Door 标准版/高级版,包括具有自定义规则的 Web 应用程序防火墙。 |
使用 blob 上传 的 blob 源 |
此模板创建一个 Front Door,其中包含源、路由和 ruleSet,以及一个包含 Blob 容器的 Azure 存储帐户。 Front Door 在上传文件时向存储帐户发送流量。 |
使用 WAF、域和日志将 FrontDoor CDN EventHub |
此模板创建新的 Azure FrontDoor cdn 配置文件。 使用自定义和托管规则、cdn 路由、源和组与 WAF 和路由关联创建 WAF,配置自定义域,创建事件中心和诊断设置,以便使用事件中心发送 CDN 访问日志。 |
受 Azure Frontdoor 保护的 |
此模板允许部署受 Azure Frontdoor 高级版保护并发布的 Azure 高级函数。 Azure Frontdoor 和 Azure Functions 之间的连接受 Azure 专用链接的保护。 |
Terraform (AzAPI 提供程序)资源定义
可以使用目标操作部署 FrontDoorWebApplicationFirewallPolicies 资源类型:
- 资源组
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
资源格式
若要创建 Microsoft.Network/FrontDoorWebApplicationFirewallPolicies 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/FrontDoorWebApplicationFirewallPolicies@2018-08-01"
name = "string"
etag = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = jsonencode({
properties = {
customRules = {
rules = [
{
action = "string"
matchConditions = [
{
matchValue = [
"string"
]
matchVariable = "string"
negateCondition = bool
operator = "string"
selector = "string"
}
]
name = "string"
priority = int
rateLimitDurationInMinutes = int
rateLimitThreshold = int
ruleType = "string"
transforms = [
"string"
]
}
]
}
managedRules = {
ruleSets = [
{
priority = int
version = int
ruleSetType = "string"
// For remaining properties, see ManagedRuleSet objects
}
]
}
policySettings = {
enabledState = "string"
mode = "string"
}
}
})
}
ManagedRuleSet 对象
设置 ruleSetType 属性以指定对象的类型。
对于 AzureManagedRuleSet,请使用:
{
ruleGroupOverrides = [
{
action = "string"
ruleGroupOverride = "string"
}
]
ruleSetType = "AzureManagedRuleSet"
}
属性值
AzureManagedOverrideRuleGroup
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
ruleGroupOverride | 描述重写规则组 | “SqlInjection” “XSS”(必需) |
AzureManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
ruleGroupOverrides | Azure 托管提供程序替代配置列表(可选) | AzureManagedOverrideRuleGroup[] |
ruleSetType | RuleSetType - AzureManagedRuleSet 或 OWASP RuleSets。 | “AzureManagedRuleSet”(必需) |
CustomRule
名字 | 描述 | 价值 |
---|---|---|
行动 | 操作类型 | “允许” “Block” “Log”(必需) |
matchConditions | 匹配条件列表 | MatchConditionAutoGenerated[] (必需) |
名字 | 获取策略中唯一的资源的名称。 此名称可用于访问资源。 | 字符串 约束: 最大长度 = |
优先权 | 描述规则的优先级。 在具有较高值的规则之前,将评估值较低的规则 | int (必需) |
rateLimitDurationInMinutes | 定义速率限制持续时间。 默认值 - 1 分钟 | int |
rateLimitThreshold | 定义速率限制阈值 | int |
ruleType | 描述规则的类型 | “MatchRule” “RateLimitRule”(必需) |
变换 | 转换列表 | 包含任一项的字符串数组: “HtmlEntityDecode” “小写” “RemoveNulls” “Trim” “大写” “UrlDecode” “UrlEncode” |
CustomRules
名字 | 描述 | 价值 |
---|---|---|
规则 | 规则列表 | CustomRule[] |
ManagedRuleSet
名字 | 描述 | 价值 |
---|---|---|
优先权 | 描述规则的优先级 | int |
ruleSetType | 对于 AzureManagedRuleSet,请设置为“AzureManagedRuleSet”。 | “AzureManagedRuleSet”(必需) |
版本 | 定义规则集的版本 | int |
ManagedRuleSets
名字 | 描述 | 价值 |
---|---|---|
ruleSets | 规则列表 | ManagedRuleSet[] |
MatchConditionAutoGenerated
名字 | 描述 | 价值 |
---|---|---|
matchValue | 匹配值 | string[] (必需) |
matchVariable | 匹配变量 | “PostArgs” “QueryString” “RemoteAddr” “RequestBody” “RequestHeader” “RequestMethod” “RequestUri”(必需) |
negateCondition | 描述这是否为否定条件 | bool |
算子 | 描述要匹配的运算符 | “Any” “BeginsWith” “Contains” “EndsWith” “Equal” “GeoMatch” “GreaterThan” “GreaterThanOrEqual” “IPMatch” “LessThan” “LessThanOrEqual”(必需) |
选择器 | 要匹配的 RequestHeader 或 RequestBody 中的选择器的名称 | 字符串 |
Microsoft.Network/FrontDoorWebApplicationFirewallPolicies
名字 | 描述 | 价值 |
---|---|---|
etag | 获取在更新资源时更改的唯一只读字符串。 | 字符串 |
位置 | 资源位置。 | 字符串 |
名字 | 资源名称 | 字符串 约束: 最大长度 = (必需) |
性能 | Web 应用程序防火墙策略的属性。 | WebApplicationFirewallPolicyPropertiesFormat |
标签 | 资源标记 | 标记名称和值的字典。 |
类型 | 资源类型 | “Microsoft.Network/FrontDoorWebApplicationFirewallPolicies@2018-08-01” |
PolicySettings
名字 | 描述 | 价值 |
---|---|---|
enabledState | 描述策略是否处于启用状态或禁用状态 | “Disabled” “Enabled” |
模式 | 描述它在策略级别是否处于检测模式或预防模式 | “检测” “预防” |
ResourceTags
名字 | 描述 | 价值 |
---|
WebApplicationFirewallPolicyPropertiesFormat
名字 | 描述 | 价值 |
---|---|---|
customRules | 描述策略中的自定义规则 | CustomRules |
managedRules | 描述策略中的托管规则 | ManagedRuleSets |
policySettings | 描述策略的 policySettings | PolicySettings |