Delen via


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:

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

  1. 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.

  2. Selecteer Integratie van virtueel netwerk toevoegen.

    Schermopname van het selecteren van integratie van virtueel netwerk.

  3. Selecteer een abonnement en een virtueel netwerk.

  4. 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.

    Schermopname van het selecteren van het virtuele netwerk.

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

  1. 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.

  2. 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
    
  3. 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
    
  4. 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.