1

在使用 powershell 在 Azure 中创建 NSG 规则时,我正在尝试向 SourceAddressPrefix 添加多个 CIDR。我在运行 Set-AzNetworkSecurityGroup 时收到错误消息,因此它在使用 New-AzNetworkSecurityRuleConfig 创建规则时接受该值。任何人都知道如何解决它?注意:是的,我知道我可以创建多个规则,但我想尽可能避免这种情况。

使用门户可以正常工作,但使用 Powershell 我收到错误消息。

尝试1:

 $rule3 = New-AzNetworkSecurityRuleConfig -Name "In-SandNet-Vnet-Any-Any" `
-Access Allow -Protocol *  -Direction Inbound -Priority 1000 -SourceAddressPrefix {"10.0.0.0/8","192.168.0.0/16"} `
 -SourcePortRange * -DestinationAddressPrefix VirtualNetwork  -DestinationPortRange * 

$nsg.SecurityRules.Add($rule3)

Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg

错误信息:

xxx has invalid Address prefix. Value provided: "10.0.0.0/8","192.168.0.0/16"

尝试2:

$rule3 = New-AzNetworkSecurityRuleConfig -Name "In-SandNet-Vnet-Any-Any" `
    -Access Allow -Protocol *  -Direction Inbound -Priority 1000 -SourceAddressPrefix "10.0.0.0/8,192.168.0.0/16" `
     -SourcePortRange * -DestinationAddressPrefix VirtualNetwork  -DestinationPortRange * 

$nsg.SecurityRules.Add($rule3)


Set-AzNetworkSecurityGroup -NetworkSecurityGroup $nsg

错误信息(相同的错误信息):

xxx has invalid Address prefix. Value provided: "10.0.0.0/8","192.168.0.0/16"
4

1 回答 1

3

New-AzNetworkSecurityRuleConfig命令需要一个String[]forSourceAddressPrefix参数。参考

所以以下应该工作:

@("10.0.0.0/8", "192.168.0.0/16")

于 2020-02-27T09:43:36.957 回答