你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
管理专用终结点的网络策略
默认情况下,虚拟网络中的子网禁用网络策略。 若要使用网络策略(如用户定义的路由和网络安全组支持),必须为子网启用网络策略支持。 此设置仅适用于子网中的专用终结点,并影响子网中的所有专用终结点。 对于子网中的其他资源,将根据网络安全组的安全规则控制访问。
可以仅为网络安全组启用网络策略,也可以仅为用户定义的路由启用网络策略或同时为两者启用网络策略。
如果为用户定义的路由启用网络安全策略,则可以使用等于或大于虚拟网络地址空间前缀长度的自定义地址前缀长度(子网掩码),以使专用终结点传播的 /32 默认路由失效。 如果希望确保专用终结点连接请求通过防火墙或虚拟设备,则此功能非常有用。 否则,/32 默认路由根据最长前缀匹配算法将流量直接发送到专用终结点。
重要
要使专用终结点路由失效,用户定义的路由的前缀大小必须等于或小于预置专用终结点的虚拟网络地址空间。 例如,用户定义的路由默认路由 (0.0.0.0/0) 不会使专用终结点路由失效,因为它涵盖的范围比专用终结点的地址空间更广。 最长前缀匹配规则将为更具体的地址前缀提供更高的优先级。 此外,请确保在托管专用终结点的子网中启用网络策略。
使用以下步骤可以启用或禁用专用终结点的网络策略:
- Azure 门户
- Azure PowerShell
- Azure CLI
- Azure 资源管理器模板(ARM 模板)
以下示例介绍如何为名为 myVNet
的虚拟网络启用和禁用 PrivateEndpointNetworkPolicies
,且 10.1.0.0/24
的 default
子网托管在名为 myResourceGroup
的资源组中。
启用网络策略
按照以下步骤为专用终结点配置网络安全组和路由表。
登录到 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"
}
}
]
}
}
重要
在网络策略功能、网络安全组和用户定义的路由方面,专用终结点存在限制。 有关详细信息,请参阅限制。
后续步骤
本操作指南介绍了如何在 Azure 虚拟网络中为专用终结点启用和禁用网络策略。 你已了解如何使用 Azure 门户、Azure PowerShell、Azure CLI 和 Azure Resource Manager 模板来管理专用终结点的网络策略。
要详细了解支持专用终结点的服务,请参阅: