你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
管理专用终结点的网络策略
默认情况下,虚拟网络中的子网禁用网络策略。 若要使用用户定义的路由和网络安全组支持等网络策略,必须为子网启用网络策略支持。 此设置仅适用于子网中的专用终结点,并影响子网中的所有专用终结点。 对于子网中的其他资源,将根据网络安全组的安全规则控制访问。
只能为网络安全组启用网络策略、仅针对用户定义的路由或两者启用网络策略。
如果为用户定义的路由启用网络安全策略,则可以使用等于或大于虚拟网络地址空间的自定义地址前缀使专用终结点传播的 /32 默认路由失效。 如果要确保专用终结点连接请求通过防火墙或虚拟设备,此功能非常有用。 否则,/32 默认路由会根据 最长前缀匹配算法将流量直接发送到专用终结点。
重要
若要使专用终结点路由失效,用户定义的路由的前缀必须等于或大于预配专用终结点的虚拟网络地址空间。 例如,用户定义的路由默认路由 (0.0.0.0.0/0) 不会使专用终结点路由失效。 应在托管专用终结点的子网中启用网络策略。
使用以下步骤为专用终结点启用或禁用网络策略:
- Azure 门户
- Azure PowerShell
- Azure CLI
- Azure 资源管理器模板(ARM 模板)
以下示例介绍如何为名为default
的资源组myResourceGroup
中托管的子网命名myVNet
的10.1.0.0/24
虚拟网络启用和禁用PrivateEndpointNetworkPolicies
。
启用网络策略
登录到 Azure 门户。
在门户顶部的搜索框中,输入“虚拟网络”。 选择“虚拟网络”。
选择“myVNet”。
在 myVNET 的“设置”中,选择“子网”。
选择默认子网。
在默认子网的属性中,选择网络安全组、路由表的检查框,或者在网络策略中同时选择“专用终结点”中的两者。
选择“保存”。
使用 Get-AzVirtualNetwork、Set-AzVirtualNetwork 以及 Set-AzVirtualNetwork 启用策略。
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
$sub = @{
Name = 'default'
VirtualNetwork = $vnet
AddressPrefix = '10.1.0.0/24'
PrivateEndpointNetworkPoliciesFlag = 'Enabled' # Can be either 'Disabled', 'NetworkSecurityGroupEnabled', 'RouteTableEnabled', or 'Enabled'
}
Set-AzVirtualNetworkSubnetConfig @sub
$vnet | Set-AzVirtualNetwork
使用 az network vnet subnet update 启用策略。 Azure CLI 仅支持值 true
或 false
。 它不允许仅对用户定义的路由或网络安全组启用策略:
az network vnet subnet update \
--disable-private-endpoint-network-policies false \
--name default \
--resource-group myResourceGroup \
--vnet-name myVNet
本部分介绍如何使用 ARM 模板启用子网专用终结点策略。 可能的值为privateEndpointNetworkPolicies
Disabled
、NetworkSecurityGroupEnabled
和RouteTableEnabled
Enabled
。
{
"name": "myVNet",
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2019-04-01",
"location": "WestUS",
"properties": {
"addressSpace": {
"addressPrefixes": [
"10.1.0.0/16"
]
},
"subnets": [
{
"name": "default",
"properties": {
"addressPrefix": "10.1.0.0/24",
"privateEndpointNetworkPolicies": "Enabled"
}
}
]
}
}
禁用网络策略
登录到 Azure 门户。
在门户顶部的搜索框中,输入“虚拟网络”。 选择“虚拟网络”。
选择“myVNet”。
在 myVNET 的“设置”中,选择“子网”。
选择默认子网。
在默认子网的属性中,选择“在专用终结点的网络策略中禁用”。
选择“保存”。
使用 Get-AzVirtualNetwork、Set-AzVirtualNetwork 以及 Set-AzVirtualNetwork 禁用策略。
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
$sub = @{
Name = 'default'
VirtualNetwork = $vnet
AddressPrefix = '10.1.0.0/24'
PrivateEndpointNetworkPoliciesFlag = 'Disabled'
}
Set-AzVirtualNetworkSubnetConfig @sub
$vnet | Set-AzVirtualNetwork
使用 az network vnet subnet update 禁用策略。
az network vnet subnet update \
--disable-private-endpoint-network-policies true \
--name default \
--resource-group myResourceGroup \
--vnet-name myVNet
本部分介绍如何使用 ARM 模板禁用子网专用终结点策略。
{
"name": "myVNet",
"type": "Microsoft.Network/virtualNetworks",
"apiVersion": "2019-04-01",
"location": "WestUS",
"properties": {
"addressSpace": {
"addressPrefixes": [
"10.1.0.0/16"
]
},
"subnets": [
{
"name": "default",
"properties": {
"addressPrefix": "10.1.0.0/24",
"privateEndpointNetworkPolicies": "Disabled"
}
}
]
}
}
重要
与网络策略功能、网络安全组和用户定义的路由相关的专用终结点存在限制。 有关详细信息,请参阅限制。
后续步骤