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

New-AzureRmApplicationGatewayWebApplicationFirewallConfiguration

创建应用程序网关的 WAF 配置。

警告

截至 2024 年 2 月 29 日,AzureRM PowerShell 模块已正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可能正常运行,但它不再维护或受支持,但会根据用户的自由裁量权和风险继续使用任何继续使用模块。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

语法

New-AzureRmApplicationGatewayWebApplicationFirewallConfiguration
   -Enabled <Boolean>
   -FirewallMode <String>
   [-RuleSetType <String>]
   [-RuleSetVersion <String>]
   [-DisabledRuleGroup <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFirewallDisabledRuleGroup]>]
   [-RequestBodyCheck <Boolean>]
   [-MaxRequestBodySizeInKb <Int32>]
   [-FileUploadLimitInMb <Int32>]
   [-Exclusion <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayFirewallExclusion]>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzureRmApplicationGatewayWebApplicationFirewallConfiguration cmdlet 为 Azure 应用程序网关创建 Web 应用程序防火墙(WAF)配置。

示例

示例 1:为应用程序网关创建 Web 应用程序防火墙配置

PS C:\> $disabledRuleGroup1 = New-AzureRmApplicationGatewayFirewallDisabledRuleGroupConfig -RuleGroupName "REQUEST-942-APPLICATION-ATTACK-SQLI" -Rules 942130,942140
PS C:\> $disabledRuleGroup2 = New-AzureRmApplicationGatewayFirewallDisabledRuleGroupConfig -RuleGroupName "REQUEST-921-PROTOCOL-ATTACK"
PS C:\> $firewallConfig = New-AzureRmApplicationGatewayWebApplicationFirewallConfiguration -Enabled $true -FirewallMode "Prevention" -RuleSetType "OWASP" -RuleSetVersion "3.0" -DisabledRuleGroups $disabledRuleGroup1,$disabledRuleGroup2

第一个命令为名为“REQUEST-942-APPLICATION-ATTACK-SQLI”的规则组创建新的禁用规则组配置,规则 942130 和规则 942140 处于禁用状态。 第二个命令为名为“REQUEST-921-PROTOCOL-ATTACK”的规则组创建另一个禁用的规则组配置。 未专门传递任何规则,因此将禁用规则组的所有规则。 然后,最后一个命令创建一个 WAF 配置,其中防火墙规则在 $disabledRuleGroup 1 和 $disabledRuleGroup 2 中已禁用。 新的 WAF 配置存储在$firewallConfig变量中。

参数

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

类型:IAzureContextContainer
别名:AzureRmContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisabledRuleGroup

禁用的规则组。

类型:List<T>[PSApplicationGatewayFirewallDisabledRuleGroup]
别名:DisabledRuleGroups
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Enabled

指示是否启用 WAF。

类型:Boolean
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Exclusion

排除列表。

类型:List<T>[PSApplicationGatewayFirewallExclusion]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FileUploadLimitInMb

最大文件上传限制(以 MB 为单位)。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-FirewallMode

指定 Web 应用程序防火墙模式。 此参数的可接受值为:

  • 检测
  • 防护
类型:String
接受的值:Detection, Prevention
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-MaxRequestBodySizeInKb

知识库(KB) 的最大请求正文大小。

类型:Int32
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RequestBodyCheck

请求正文是否检查。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RuleSetType

Web 应用程序防火墙规则集的类型。 此参数的可接受值为:

  • OWASP
类型:String
接受的值:OWASP
Position:Named
默认值:OWASP
必需:False
接受管道输入:False
接受通配符:False

-RuleSetVersion

规则集类型的版本。 此参数的可接受值为:

  • 3.0
  • 2.2.9
类型:String
接受的值:3.0, 2.2.9
Position:Named
默认值:3.0
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

None

输出

PSApplicationGatewayWebApplicationFirewallConfiguration