Depolama hesabınıza tüm genel erişimi reddedebilir ve ardından Azure ağ ayarlarını belirli sanal ağ alt ağlarından gelen istekleri kabul edecek şekilde yapılandırabilirsiniz. Daha fazla bilgi edinmek için bkz. sanal ağ alt ağları.
Depolama hesabına sanal ağ kuralı uygulamak için, kullanıcının eklenen alt ağlar için uygun izinlere sahip olması gerekir.
Depolama Hesabı Katkıda Bulunanı veya Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action izni olan bir kullanıcı, özel bir Azure rolü kullanarak bir kural uygulayabilir.
Sanal ağ kuralı oluşturma
Uyarı
Başka bir Microsoft Entra kiracısında bulunan bir sanal ağdan erişimi etkinleştirmek istiyorsanız PowerShell veya Azure CLI kullanmanız gerekir. Azure portalı diğer Microsoft Entra kiracılarında alt ağları göstermez.
Sanal ağ ve erişim kurallarını yapılandırmak istediğiniz depolama hesabına gidin.
Hizmet menüsünde, Güvenlik + ağ altında Ağ'ı seçin ve ardından Kaynak ayarları: Sanal ağlar, IP adresleri ve özel durumlar'ın altında Görünüm'ü seçin.
Sanal ağlaraltında Mevcut sanal ağı ekleseçin.
Ağları ekle penceresi açılır.
Sanal ağlar açılan listesinden bir sanal ağ seçin.
Alt ağlar açılan listesinden istediğiniz alt ağları ve ardından Ekle'yi seçin.
Yeni bir sanal ağ oluşturmanız gerekiyorsa Yeni sanal ağ ekle'yi seçin. Yeni sanal ağı oluşturmak için gerekli bilgileri sağlayın ve oluştur'u seçin. Kural oluşturma sırasında yalnızca aynı Microsoft Entra kiracısına ait sanal ağlar seçim için görünür. Başka bir kiracıya ait sanal ağdaki bir alt ağa erişim vermek için PowerShell, Azure CLI veya REST API'yi kullanın.
Bir sanal ağı veya alt ağ kuralını kaldırmak için üç noktayı (...) seçerek sanal ağ veya alt ağın bağlam menüsünü açın ve ardından Kaldır'ı seçin.
Yaptığınız değişiklikleri uygulamak için Kaydet'i seçin.
Önemli
Ağ kuralına dahil edilen bir alt ağı silerseniz, bu alt ağ depolama hesabının ağ kurallarından kaldırılır. Aynı ada sahip yeni bir alt ağ oluşturursanız depolama hesabına erişimi olmaz. Erişime izin vermek için, depolama hesabının ağ kurallarında yeni alt ağı açıkça yetkilendirmeniz gerekir.
Azure PowerShell'i yükleyin ve oturum açın.
Yalnızca belirli sanal ağlardan gelen trafiğe izin vermek için komutunu kullanın Update-AzStorageAccountNetworkRuleSet ve parametresini -DefaultAction olarak Denyayarlayın:
Update-AzStorageAccountNetworkRuleSet -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -DefaultAction Deny
Önemli
parametresini -DefaultActionolarak ayarlamadığınız sürece ağ kurallarının Deny hiçbir etkisi olmaz. Ancak bu ayarı değiştirmek, uygulamanızın Azure Depolama'ya bağlanma becerisini etkileyebilir. Bu ayarı değiştirmeden önce izin verilen tüm ağlara erişim izni verdiğinizden veya özel uç nokta üzerinden erişim ayarladığınızdan emin olun.
Sanal ağ kurallarını listeleme:
(Get-AzStorageAccountNetworkRuleSet -ResourceGroupName "myresourcegroup" -AccountName "mystorageaccount").VirtualNetworkRules
Mevcut bir sanal ağ ve alt ağda Azure Depolama için hizmet uç noktasını etkinleştirme:
Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Set-AzVirtualNetworkSubnetConfig -Name "mysubnet" -AddressPrefix "10.0.0.0/24" -ServiceEndpoint "Microsoft.Storage.Global" | Set-AzVirtualNetwork
Sanal ağ ve alt ağ için ağ kuralı ekleyin:
$subnet = Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Get-AzVirtualNetworkSubnetConfig -Name "mysubnet"
Add-AzStorageAccountNetworkRule -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -VirtualNetworkResourceId $subnet.Id
Başka bir Microsoft Entra kiracısına ait bir sanal ağdaki bir alt ağa ağ kuralı eklemek için, VirtualNetworkResourceId biçiminde /subscriptions/subscription-ID/resourceGroups/resourceGroup-Name/providers/Microsoft.Network/virtualNetworks/vNet-name/subnets/subnet-name. parametresi kullanın.
Sanal ağ ve alt ağ için ağ kuralını kaldırma:
$subnet = Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Get-AzVirtualNetworkSubnetConfig -Name "mysubnet"
Remove-AzStorageAccountNetworkRule -ResourceGroupName "myresourcegroup" -Name "mystorageaccount" -VirtualNetworkResourceId $subnet.Id
Azure CLI'yiyükleyin ve oturum açın.
Yalnızca belirli sanal ağlardan gelen trafiğe izin vermek için komutunu kullanın az storage account update ve parametresini --default-action olarak Denyayarlayın:
az storage account update --resource-group "myresourcegroup" --name "mystorageaccount" --default-action Deny
Önemli
parametresini --default-actionolarak ayarlamadığınız sürece ağ kurallarının Deny hiçbir etkisi olmaz. Ancak bu ayarı değiştirmek, uygulamanızın Azure Depolama'ya bağlanma becerisini etkileyebilir. Bu ayarı değiştirmeden önce izin verilen tüm ağlara erişim izni verdiğinizden veya özel uç nokta üzerinden erişim ayarladığınızdan emin olun.
Sanal ağ kurallarını listeleme:
az storage account network-rule list --resource-group "myresourcegroup" --account-name "mystorageaccount" --query virtualNetworkRules
Mevcut bir sanal ağ ve alt ağda Azure Depolama için hizmet uç noktasını etkinleştirme:
az network vnet subnet update --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --service-endpoints "Microsoft.Storage.Global"
Sanal ağ ve alt ağ için ağ kuralı ekleyin:
subnetid=$(az network vnet subnet show --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --query id --output tsv)
az storage account network-rule add --resource-group "myresourcegroup" --account-name "mystorageaccount" --subnet $subnetid
Başka bir Microsoft Entra kiracısına ait sanal ağdaki bir alt ağa kural eklemek için /subscriptions/<subscription-ID>/resourceGroups/<resourceGroup-Name>/providers/Microsoft.Network/virtualNetworks/<vNet-name>/subnets/<subnet-name> biçiminde tam alt ağ kimliğini kullanın. parametresini subscription kullanarak başka bir Microsoft Entra kiracısına ait bir sanal ağın alt ağ kimliğini alabilirsiniz.
Sanal ağ ve alt ağ için ağ kuralını kaldırma:
subnetid=$(az network vnet subnet show --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --query id --output tsv)
az storage account network-rule remove --resource-group "myresourcegroup" --account-name "mystorageaccount" --subnet $subnetid
Ayrıca bakınız