你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
New-AzFirewallNetworkRuleCollection
创建Azure 防火墙网络规则的网络集合。
语法
New-AzFirewallNetworkRuleCollection
-Name <String>
-Priority <UInt32>
-Rule <PSAzureFirewallNetworkRule[]>
-ActionType <String>
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
New-AzFirewallNetworkRuleCollection cmdlet 创建防火墙网络规则的集合。
示例
示例 1:使用两个规则创建网络集合
$rule1 = New-AzFirewallNetworkRule -Name "all-udp-traffic" -Description "Rule for all UDP traffic" -Protocol UDP -SourceAddress "*" -DestinationAddress "*" -DestinationPort "*"
$rule2 = New-AzFirewallNetworkRule -Name "partial-tcp-rule" -Description "Rule for all TCP traffic from 10.0.0.0 to 60.1.5.0:4040" -Protocol TCP -SourceAddress "10.0.0.0" -DestinationAddress "60.1.5.0" -DestinationPort "4040"
New-AzFirewallNetworkRuleCollection -Name RC1 -Priority 100 -Rule $rule1, $rule2 -ActionType "Allow"
此示例创建一个集合,该集合将允许与两个规则之一匹配的所有流量。 第一个规则适用于所有 UDP 流量。 第二个规则适用于从 10.0.0.0 到 60.1.5.0:4040 的 TCP 流量。 如果还有另一个优先级较高的网络规则集合(较小的数字),该集合还与 $rule 1 或 $rule 2 中标识的流量匹配,则具有较高优先级的规则集合的操作将改为生效。
示例 2:向规则集合添加规则
$rule1 = New-AzFirewallNetworkRule -Name "all-udp-traffic" -Description "Rule for all UDP traffic" -Protocol UDP -SourceAddress "*" -DestinationAddress "*" -DestinationPort "*"
$ruleCollection = New-AzFirewallNetworkRuleCollection -Name "MyNetworkRuleCollection" -Priority 100 -Rule $rule1 -ActionType "Allow"
$rule2 = New-AzFirewallNetworkRule -Name "partial-tcp-rule" -Description "Rule for all TCP traffic from 10.0.0.0 to 60.1.5.0:4040" -Protocol TCP -SourceAddress "10.0.0.0" -DestinationAddress "60.1.5.0" -DestinationPort "4040"
$ruleCollection.AddRule($rule2)
此示例使用一个规则创建新的网络规则集合,然后使用规则集合对象上的 AddRule 方法向规则集合添加第二个规则。 给定规则集合中的每个规则名称都必须具有唯一的名称,且不区分大小写。
示例 3:从规则集合获取规则
$rule1 = New-AzFirewallNetworkRule -Name "all-udp-traffic" -Description "Rule for all UDP traffic" -Protocol UDP -SourceAddress "*" -DestinationAddress "*" -DestinationPort "*"
$ruleCollection = New-AzFirewallNetworkRuleCollection -Name "MyNetworkRuleCollection" -Priority 100 -Rule $rule1 -ActionType "Allow"
$getRule=$ruleCollection.GetRuleByName("ALL-UDP-traffic")
此示例使用一个规则创建新的网络规则集合,然后按名称获取规则,调用规则集合对象上的 GetRuleByName 方法。 GetRuleByName 方法的规则名称不区分大小写。
示例 4:从规则集合中删除规则
$rule1 = New-AzFirewallNetworkRule -Name "all-udp-traffic" -Description "Rule for all UDP traffic" -Protocol UDP -SourceAddress "*" -DestinationAddress "*" -DestinationPort "*"
$rule2 = New-AzFirewallNetworkRule -Name "partial-tcp-rule" -Description "Rule for all TCP traffic from 10.0.0.0 to 60.1.5.0:4040" -Protocol TCP -SourceAddress "10.0.0.0" -DestinationAddress "60.1.5.0" -DestinationPort "4040"
$ruleCollection = New-AzFirewallNetworkRuleCollection -Name "MyNetworkRuleCollection" -Priority 100 -Rule $rule1, $rule2 -ActionType "Allow"
$ruleCollection.RemoveRuleByName("ALL-udp-traffic")
此示例使用两个规则创建新的网络规则集合,然后通过在规则集合对象上调用方法 RemoveRuleByName 从规则集合中删除第一个规则。 方法 RemoveRuleByName 的规则名称不区分大小写。
参数
-ActionType
指定要为此规则的流量匹配条件执行的操作。 接受的操作为“允许”或“拒绝”。
类型: | String |
接受的值: | Allow, Deny |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Confirm
提示你在运行 cmdlet 之前进行确认。
类型: | SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DefaultProfile
用于与 Azure 通信的凭据、帐户、租户和订阅。
类型: | IAzureContextContainer |
别名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Name
指定此网络规则集合的名称。 该名称在所有网络规则集合中必须是唯一的。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Priority
指定此规则集合的优先级。 优先级是介于 100 和 65000 之间的数字。 数字越小,优先级就越高。
类型: | UInt32 |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Rule
指定要在此集合下分组的规则列表。
类型: | PSAzureFirewallNetworkRule[] |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。
类型: | SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None
输出
PSAzureFirewallNetworkRuleCollection