Azure CLI: de toegang voor importeren/exporteren voor beheerde schijven beperken met privékoppelingen
Van toepassing op: ✔️ Virtuele Linux-heavy_check_mark: Flexibele schaalsets
U kunt privé-eindpunten gebruiken om het exporteren en importeren van beheerde schijven te beperken en om veilig toegang te krijgen tot gegevens via een privékoppeling van clients in uw virtuele Azure-netwerk. Het privé-eindpunt gebruikt een IP-adres uit de adresruimte van het virtuele netwerk voor uw service voor beheerde schijven. Netwerkverkeer tussen de clients in het virtuele netwerk en beheerde schijven gaat over het virtuele netwerk en een persoonlijke koppeling in het fundamentele Microsoft-netwerk, waardoor de blootstelling van het openbare internet wordt voorkomen.
Om privékoppelingen te gebruiken voor het exporteren/importeren van beheerde schijf, maakt u eerst een resource voor schijftoegang en koppelt u deze aan uw virtuele netwerk in hetzelfde abonnement door een privé-eindpunt te maken. Vervolgens koppelt u een schijf of een momentopname aan een exemplaar van schijftoegang. Als laatste moet u ook de eigenschap NetworkAccessPolicy van de schijf of de momentopname instellen op AllowPrivate. Hiermee wordt de toegang tot het virtuele netwerk beperkt.
U kunt de eigenschap NetworkAccessPolicy instellen op DenyAll om te voorkomen dat iemand de gegevens voor een schijf of momentopname exporteert. De standaardwaarde voor de eigenschap NetworkAccessPolicy is AllowAll.
Beperkingen
- Het virtuele netwerk moet zich in hetzelfde abonnement als uw object voor schijftoegang bevinden om ze te koppelen.
- U kunt niet meer dan 10 schijven of momentopnamen tegelijk met hetzelfde object voor schijftoegang importeren of exporteren.
- U kunt geen handmatige goedkeuring aanvragen om een virtueel netwerk te koppelen aan een object voor schijftoegang.
Meld u aan bij uw abonnement en stel de variabelen in
subscriptionId=yourSubscriptionId
resourceGroupName=yourResourceGroupName
region=northcentralus
diskAccessName=yourDiskAccessForPrivateLinks
vnetName=yourVNETForPrivateLinks
subnetName=yourSubnetForPrivateLinks
privateEndPointName=yourPrivateLinkForSecureMDExportImport
privateEndPointConnectionName=yourPrivateLinkConnection
#The name of an existing disk which is the source of the snapshot
sourceDiskName=yourSourceDiskForSnapshot
#The name of the new snapshot which will be secured via Private Links
snapshotNameSecuredWithPL=yourSnapshotNameSecuredWithPL
az login
az account set --subscription $subscriptionId
Een schijftoegang maken met Azure CLI
az disk-access create -n $diskAccessName -g $resourceGroupName -l $region
diskAccessId=$(az disk-access show -n $diskAccessName -g $resourceGroupName --query [id] -o tsv)
Een Virtual Network maken
Netwerkbeleid zoals netwerkbeveiligingsgroepen (NSG) wordt niet ondersteund voor privé-eindpunten. Voor het implementeren van een privé-eindpunt op een bepaald subnet is een expliciete instelling uitschakelen vereist voor dat subnet.
az network vnet create --resource-group $resourceGroupName \
--name $vnetName \
--subnet-name $subnetName
Beleid voor privé-eindpunten van subnet uitschakelen
Azure implementeert resources in een subnet binnen een virtueel netwerk, dus moet u het subnet bijwerken om beleid voor privé-eindpunt netwerk uit te schakelen.
az network vnet subnet update --resource-group $resourceGroupName \
--name $subnetName \
--vnet-name $vnetName \
--disable-private-endpoint-network-policies true
Een privé-eindpunt maken voor het object voor schijftoegang
az network private-endpoint create --resource-group $resourceGroupName \
--name $privateEndPointName \
--vnet-name $vnetName \
--subnet $subnetName \
--private-connection-resource-id $diskAccessId \
--group-ids disks \
--connection-name $privateEndPointConnectionName
Privé-DNS-zone configureren
Maak een Privé-DNS-zone voor de opslagblob, maak een koppelingslink met het Virtual Network en maak een DNS-zonegroep om het privé-eindpunt aan de Privé-DNS-zone te koppelen.
az network private-dns zone create --resource-group $resourceGroupName \
--name "privatelink.blob.core.windows.net"
az network private-dns link vnet create --resource-group $resourceGroupName \
--zone-name "privatelink.blob.core.windows.net" \
--name yourDNSLink \
--virtual-network $vnetName \
--registration-enabled false
az network private-endpoint dns-zone-group create \
--resource-group $resourceGroupName \
--endpoint-name $privateEndPointName \
--name yourZoneGroup \
--private-dns-zone "privatelink.blob.core.windows.net" \
--zone-name disks
Een schijf maken die wordt beveiligd met Private Links
resourceGroupName=yourResourceGroupName
region=northcentralus
diskAccessName=yourDiskAccessName
diskName=yourDiskName
diskSkuName=Standard_LRS
diskSizeGB=128
diskAccessId=$(az resource show -n $diskAccessName -g $resourceGroupName --namespace Microsoft.Compute --resource-type diskAccesses --query [id] -o tsv)
az disk create -n $diskName \
-g $resourceGroupName \
-l $region \
--size-gb $diskSizeGB \
--sku $diskSkuName \
--network-access-policy AllowPrivate \
--disk-access $diskAccessId
Een momentopname maken van een schijf die wordt beveiligd met persoonlijke koppelingen
resourceGroupName=yourResourceGroupName
region=northcentralus
diskAccessName=yourDiskAccessName
sourceDiskName=yourSourceDiskForSnapshot
snapshotNameSecuredWithPL=yourSnapshotName
diskId=$(az disk show -n $sourceDiskName -g $resourceGroupName --query [id] -o tsv)
diskAccessId=$(az resource show -n $diskAccessName -g $resourceGroupName --namespace Microsoft.Compute --resource-type diskAccesses --query [id] -o tsv)
az snapshot create -n $snapshotNameSecuredWithPL \
-g $resourceGroupName \
-l $region \
--source $diskId \
--network-access-policy AllowPrivate \
--disk-access $diskAccessId
Volgende stappen
- Upload VHD naar Azure kopiëren of een beheerde schijf kopiëren naar een andere regio - Azure CLI of Azure PowerShell module
- Een VHD downloaden - Windows of Linux
- Veelgestelde vragen over privékoppelingen
- Beheerde momentopnamen exporteren/kopiëren als VHD naar een opslagaccount in een andere regio met CLI