Integratie van virtuele netwerken inschakelen in Azure-app Service
Door te integreren met een virtueel Azure-netwerk vanuit uw Azure-app Service-app, kunt u privébronnen bereiken vanuit uw app binnen het virtuele netwerk.
Vereisten
Voor de integratiefunctie van het virtuele netwerk is het volgende vereist:
- Een App Service-prijscategorie die ondersteuning biedt voor integratie van virtuele netwerken.
- Een virtueel netwerk in dezelfde regio met een leeg subnet.
Het subnet moet worden gedelegeerd aan Microsoft.Web/serverFarms. Als u niet delegeert vóór de integratie, configureert het inrichtingsproces deze delegering. Aan het subnet moet een IPv4-blok /28
(16 adressen) worden toegewezen. U wordt aangeraden minimaal 64 adressen (IPv4-blok /26
) te hebben om maximale horizontale schaal mogelijk te maken.
Als het virtuele netwerk zich in een ander abonnement bevindt dan de app, moet u ervoor zorgen dat het abonnement met het virtuele netwerk is geregistreerd voor de Microsoft.Web
resourceprovider. De provider wordt geregistreerd wanneer u de eerste web-app in een abonnement maakt. Zie Resourceprovider registreren als u de provider expliciet wilt registreren.
Configureren in Azure Portal
Ga naar uw app in Azure Portal. Selecteer Instellingen>netwerken. Selecteer onder De configuratie van uitgaand verkeer, naast de integratie van het virtuele netwerk, de koppeling Niet geconfigureerd.
Selecteer Integratie van virtueel netwerk toevoegen.
Selecteer een abonnement en een virtueel netwerk.
Onder Subnet bevat de vervolgkeuzelijst alle virtuele netwerken in uw abonnement in dezelfde regio. Selecteer een leeg vooraf bestaand subnet of maak een nieuw subnet. Selecteer Verbinding maken.
Tijdens de integratie wordt uw app opnieuw opgestart. Wanneer de integratie is voltooid, ziet u details over het virtuele netwerk waarmee u hebt geïntegreerd.
Configureren met de Azure CLI
U kunt de integratie van virtuele netwerken ook configureren met behulp van de Azure CLI:
az webapp vnet-integration add --resource-group <group-name> --name <app-name> --vnet <vnet-name> --subnet <subnet-name>
Notitie
Met de opdracht wordt gecontroleerd of het subnet is gedelegeerd aan Microsoft.Web/serverFarms. Als deze niet is geconfigureerd, past de opdracht de benodigde delegatie toe. Als het subnet is geconfigureerd en u geen machtigingen hebt om dit te controleren of als het virtuele netwerk zich in een ander abonnement bevindt, kunt u de --skip-delegation-check
parameter gebruiken om de validatie te omzeilen.
Configureren met Azure PowerShell
Parameters voorbereiden.
$siteName = '<app-name>' $vNetResourceGroupName = '<group-name>' $webAppResourceGroupName = '<group-name>' $vNetName = '<vnet-name>' $integrationSubnetName = '<subnet-name>' $vNetSubscriptionId = '<subscription-guid>'
Notitie
Als het virtuele netwerk zich in een ander abonnement bevindt dan de web-app, kunt u de
Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"
opdracht gebruiken om de huidige abonnementscontext in te stellen. Stel de huidige abonnementscontext in op het abonnement waarin het virtuele netwerk is geïmplementeerd.Controleer of het subnet is gedelegeerd aan Microsoft.Web/serverFarms.
$vnet = Get-AzVirtualNetwork -Name $vNetName -ResourceGroupName $vNetResourceGroupName $subnet = Get-AzVirtualNetworkSubnetConfig -Name $integrationSubnetName -VirtualNetwork $vnet Get-AzDelegation -Subnet $subnet
Als uw subnet niet is gedelegeerd aan Microsoft.Web/serverFarms, voegt u delegatie toe met behulp van deze opdrachten.
$subnet = Add-AzDelegation -Name "myDelegation" -ServiceName "Microsoft.Web/serverFarms" -Subnet $subnet Set-AzVirtualNetwork -VirtualNetwork $vnet
Configureer de integratie van virtuele netwerken.
$subnetResourceId = "/subscriptions/$vNetSubscriptionId/resourceGroups/$vNetResourceGroupName/providers/Microsoft.Network/virtualNetworks/$vNetName/subnets/$integrationSubnetName" $webApp = Get-AzResource -ResourceType Microsoft.Web/sites -ResourceGroupName $webAppResourceGroupName -ResourceName $siteName $webApp.Properties.virtualNetworkSubnetId = $subnetResourceId $webApp.Properties.vnetRouteAllEnabled = 'true' $webApp | Set-AzResource -Force
Notitie
Als de web-app zich in een ander abonnement bevindt dan het virtuele netwerk, kunt u de
Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx"
opdracht gebruiken om de huidige abonnementscontext in te stellen. Stel de huidige abonnementscontext in op het abonnement waarin de web-app is geïmplementeerd.