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

Add-AzureRmNetworkSecurityRuleConfig

将网络安全规则配置添加到网络安全组。

警告

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

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

语法

Add-AzureRmNetworkSecurityRuleConfig
   -Name <String>
   -NetworkSecurityGroup <PSNetworkSecurityGroup>
   [-Description <String>]
   [-Protocol <String>]
   [-SourcePortRange <System.Collections.Generic.List`1[System.String]>]
   [-DestinationPortRange <System.Collections.Generic.List`1[System.String]>]
   [-SourceAddressPrefix <System.Collections.Generic.List`1[System.String]>]
   [-DestinationAddressPrefix <System.Collections.Generic.List`1[System.String]>]
   [-SourceApplicationSecurityGroup <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationSecurityGroup]>]
   [-DestinationApplicationSecurityGroup <System.Collections.Generic.List`1[Microsoft.Azure.Commands.Network.Models.PSApplicationSecurityGroup]>]
   [-Access <String>]
   [-Priority <Int32>]
   [-Direction <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Add-AzureRmNetworkSecurityRuleConfig
   -Name <String>
   -NetworkSecurityGroup <PSNetworkSecurityGroup>
   [-Description <String>]
   [-Protocol <String>]
   [-SourcePortRange <System.Collections.Generic.List`1[System.String]>]
   [-DestinationPortRange <System.Collections.Generic.List`1[System.String]>]
   [-SourceAddressPrefix <System.Collections.Generic.List`1[System.String]>]
   [-DestinationAddressPrefix <System.Collections.Generic.List`1[System.String]>]
   [-SourceApplicationSecurityGroupId <System.Collections.Generic.List`1[System.String]>]
   [-DestinationApplicationSecurityGroupId <System.Collections.Generic.List`1[System.String]>]
   [-Access <String>]
   [-Priority <Int32>]
   [-Direction <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

说明

Add-AzureRmNetworkSecurityRuleConfig cmdlet 将网络安全规则配置添加到 Azure 网络安全组。

示例

1:添加网络安全组

Get-AzureRmNetworkSecurityGroup -Name  nsg1 -ResourceGroupName rg1 | 
Add-AzureRmNetworkSecurityRuleConfig -Name rdp-rule -Description "Allow RDP" -Access 
    Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceAddressPrefix Internet 
    -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389 | 
    Set-AzureRmNetworkSecurityGroup

第一个命令从资源组“rg1”检索名为“nsg1”的 Azure 网络安全组。 第二个命令添加一个名为“rdp-rule”的网络安全规则,该规则允许从端口 3389 上的 Internet 流量发到检索到的网络安全组对象。 保留修改后的 Azure 网络安全组。

2:使用应用程序安全组添加新的安全规则

$srcAsg = New-AzureRmApplicationSecurityGroup -ResourceGroupName MyResourceGroup -Name srcAsg -Location "West US"
$destAsg = New-AzureRmApplicationSecurityGroup -ResourceGroupName MyResourceGroup -Name destAsg -Location "West US"

Get-AzureRmNetworkSecurityGroup -Name  nsg1 -ResourceGroupName rg1 |
Add-AzureRmNetworkSecurityRuleConfig -Name rdp-rule -Description "Allow RDP" -Access
    Allow -Protocol Tcp -Direction Inbound -Priority 100 -SourceApplicationSecurityGroup
    $srcAsg -SourcePortRange * -DestinationApplicationSecurityGroup $destAsg -DestinationPortRange 3389 |
Set-AzureRmNetworkSecurityGroup

首先,我们将创建两个新的应用程序安全组。 然后,我们从资源组“rg1”中检索名为“nsg1”的 Azure 网络安全组。 并将名为“rdp-rule”的网络安全规则添加到其中。 该规则允许从应用程序安全组“srcAsg”中的所有 IP 配置到端口 3389 上“destAsg”中的所有 IP 配置。 添加规则后,我们将保留修改后的 Azure 网络安全组。

参数

-Access

指定是允许还是拒绝网络流量。 此参数的可接受值为:允许和拒绝。

Type:String
Accepted values:Allow, Deny
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

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

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

指定网络安全规则配置的说明。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationAddressPrefix

指定目标地址前缀。 此参数的可接受值为:

  • 无类别域际路由选择 (CIDR) 地址
  • 目标 IP 地址范围
  • 一个 wild卡 字符 \ 来匹配任何 IP 地址,可以使用标记,例如 VirtualNetwork、AzureLoadBalancer 和 Internet。
Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationApplicationSecurityGroup

应用程序安全组设置为规则的目标。 它不能与“DestinationAddressPrefix”参数一起使用。

Type:List<T>[PSApplicationSecurityGroup]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationApplicationSecurityGroupId

应用程序安全组设置为规则的目标。 它不能与“DestinationAddressPrefix”参数一起使用。

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationPortRange

指定目标端口或范围。 此参数的可接受值为:

  • 整数
  • 介于 0 和 65535 之间的整数范围
  • 一个 wild卡 字符 \ 以匹配任何端口
Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Direction

指定是针对传入流量还是传出流量评估规则。 此参数的可接受值为:入站和出站。

Type:String
Accepted values:Inbound, Outbound
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

指定网络安全规则配置的名称。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-NetworkSecurityGroup

指定 NetworkSecurityGroup 对象。 此 cmdlet 将网络安全规则配置添加到此参数指定的对象。

Type:PSNetworkSecurityGroup
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Priority

指定规则配置的优先级。 此参数的可接受值为:介于 100 和 4096 之间的整数。 对于集合中的每个规则,优先级编号必须是唯一的。 优先级编号越低,规则优先级越高。

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Protocol

指定规则配置应用于的网络协议。 此参数的可接受值为:

  • Tcp
  • UDP
  • Wild卡 character \ to match both
Type:String
Accepted values:Tcp, Udp, *
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceAddressPrefix

指定源地址前缀。 此参数的可接受值为:

  • A CIDR
  • 源 IP 范围
  • 一个 wild卡 字符 \ 以匹配任何 IP 地址。 还可以使用 VirtualNetwork、AzureLoadBalancer 和 Internet 等标记。
Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceApplicationSecurityGroup

应用程序安全组设置为规则的源。 它不能与“SourceAddressPrefix”参数一起使用。

Type:List<T>[PSApplicationSecurityGroup]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourceApplicationSecurityGroupId

应用程序安全组设置为规则的源。 它不能与“SourceAddressPrefix”参数一起使用。

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SourcePortRange

指定源端口或范围。 此值表示为整数,范围介于 0 和 65535 之间,或表示为 wild卡 字符 \ 以匹配任何源端口。

Type:List<T>[String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

PSNetworkSecurityGroup

参数:NetworkSecurityGroup (ByValue)

输出

PSNetworkSecurityGroup