可以通过创建 资源实例网络规则来启用来自特定 Azure 资源实例的流量。
资源实例网络规则可以与其他网络规则结合使用,以控制到存储帐户的流量。 若要了解详细信息,请参阅 Azure 存储防火墙和虚拟网络规则。
创建资源实例网络规则
可以在 Azure 门户中添加或删除资源实例网络规则:
登录到 Azure 门户。
找到存储帐户并显示帐户概览。
在服务菜单中的“安全性 + 网络”下,选择“网络”。
验证是否已选择从所选虚拟网络和 IP 地址启用公用网络访问。
向下滚动到 “资源实例” 部分。 在 “资源类型 ”下拉列表中,选择资源实例的资源类型。
在“实例名称”下拉列表中,选择资源实例。 还可选择在当前租户、订阅或资源组中包含所有资源实例。
选择保存以应用更改。 资源实例显示在网络设置页的 “资源实例 ”部分中。
若要删除资源实例,请选择资源实例旁边的删除图标 (
)。
可以使用 PowerShell 命令添加或删除资源实例网络规则。
Grant access
添加允许从资源实例进行访问的网络规则:
$resourceId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.DataFactory/factories/myDataFactory"
$tenantId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
$resourceGroupName = "myResourceGroup"
$accountName = "mystorageaccount"
Add-AzStorageAccountNetworkRule -ResourceGroupName $resourceGroupName -Name $accountName -TenantId $tenantId -ResourceId $resourceId
通过修改网络规则集一次指定多个资源实例:
$resourceId1 = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.DataFactory/factories/myDataFactory"
$resourceId2 = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Sql/servers/mySQLServer"
$tenantId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
$resourceGroupName = "myResourceGroup"
$accountName = "mystorageaccount"
Update-AzStorageAccountNetworkRuleSet -ResourceGroupName $resourceGroupName -Name $accountName -ResourceAccessRule (@{ResourceId=$resourceId1;TenantId=$tenantId},@{ResourceId=$resourceId2;TenantId=$tenantId})
Remove access
移除允许从资源实例进行访问的网络规则:
$resourceId = "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.DataFactory/factories/myDataFactory"
$tenantId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
$resourceGroupName = "myResourceGroup"
$accountName = "mystorageaccount"
Remove-AzStorageAccountNetworkRule -ResourceGroupName $resourceGroupName -Name $accountName -TenantId $tenantId -ResourceId $resourceId
删除所有授予从资源实例进行访问的权限的网络规则:
$resourceGroupName = "myResourceGroup"
$accountName = "mystorageaccount"
Update-AzStorageAccountNetworkRuleSet -ResourceGroupName $resourceGroupName -Name $accountName -ResourceAccessRule @()
查看允许的资源实例的列表
查看有权访问存储帐户的资源实例的完整列表:
$resourceGroupName = "myResourceGroup"
$accountName = "mystorageaccount"
$rule = Get-AzStorageAccountNetworkRuleSet -ResourceGroupName $resourceGroupName -Name $accountName
$rule.ResourceAccessRules
可以使用 Azure CLI 命令添加或删除资源实例网络规则。
Grant access
添加允许从资源实例进行访问的网络规则:
az storage account network-rule add \
--resource-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Synapse/workspaces/testworkspace \
--tenant-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
-g myResourceGroup \
--account-name mystorageaccount
Remove access
移除允许从资源实例进行访问的网络规则:
az storage account network-rule remove \
--resource-id /subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myResourceGroup/providers/Microsoft.Synapse/workspaces/testworkspace \
--tenant-id xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx \
-g myResourceGroup \
--account-name mystorageaccount
查看允许的资源实例的列表
查看有权访问存储帐户的资源实例的完整列表:
az storage account network-rule list \
-g myResourceGroup \
--account-name mystorageaccount
See also