Dela via


Aktivera integrering av virtuella nätverk i Azure App Service

Genom att integrera med ett virtuellt Azure-nätverk från din Azure App Service-app kan du nå privata resurser från din app i det virtuella nätverket.

Förutsättningar

Integreringsfunktionen för virtuella nätverk kräver:

Undernätet måste delegeras till Microsoft.Web/serverFarms. Om du inte delegerar före integreringen konfigurerar etableringsprocessen den här delegeringen. Undernätet måste allokeras ett IPv4-block /28 (16 adresser). Vi rekommenderar att du har minst 64 adresser (IPv4-block /26 ) för maximal horisontell skalning.

Om det virtuella nätverket finns i en annan prenumeration än appen kontrollerar du att prenumerationen med det virtuella nätverket är registrerad för resursprovidern Microsoft.Web . Providern registreras när du skapar den första webbappen i en prenumeration. Information om hur du registrerar providern finns i Registrera resursprovider.

Konfigurera i Azure Portal

  1. Gå till din app i Azure Portal. Välj Inställningar>Nätverk. Under Konfiguration av utgående trafik bredvid Integrering av virtuellt nätverk väljer du länken Inte konfigurerad.

  2. Välj Lägg till integrering av virtuellt nätverk.

    Skärmbild som visar hur du väljer Integrering av virtuellt nätverk.

  3. Välj en prenumeration och ett virtuellt nätverk.

  4. Under Undernät innehåller listrutan alla virtuella nätverk i din prenumeration i samma region. Välj ett tomt befintligt undernät eller skapa ett nytt undernät. Välj Anslut.

    Skärmbild som visar hur du väljer det virtuella nätverket.

Under integreringen startas appen om. När integreringen är klar visas information om det virtuella nätverk som du har integrerat med.

Konfigurera med Azure CLI

Du kan också konfigurera integrering av virtuella nätverk med hjälp av Azure CLI:

az webapp vnet-integration add --resource-group <group-name> --name <app-name> --vnet <vnet-name> --subnet <subnet-name>

Kommentar

Kommandot kontrollerar om undernätet har delegerats till Microsoft.Web/serverFarms. Om den inte har konfigurerats tillämpar kommandot den nödvändiga delegeringen. Om undernätet har konfigurerats och du inte har behörighet att kontrollera det, eller om det virtuella nätverket finns i en annan prenumeration, kan du använda parametern --skip-delegation-check för att kringgå verifieringen.

Konfigurera med Azure PowerShell

  1. Förbered parametrar.

    $siteName = '<app-name>'
    $vNetResourceGroupName = '<group-name>'
    $webAppResourceGroupName = '<group-name>'
    $vNetName = '<vnet-name>'
    $integrationSubnetName = '<subnet-name>'
    $vNetSubscriptionId = '<subscription-guid>'
    

    Kommentar

    Om det virtuella nätverket finns i en annan prenumeration än en webbapp kan du använda Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx" kommandot för att ange den aktuella prenumerationskontexten. Ange den aktuella prenumerationskontexten till prenumerationen där det virtuella nätverket distribuerades.

  2. Kontrollera om undernätet har delegerats till Microsoft.Web/serverFarms.

    $vnet = Get-AzVirtualNetwork -Name $vNetName -ResourceGroupName $vNetResourceGroupName
    $subnet = Get-AzVirtualNetworkSubnetConfig -Name $integrationSubnetName -VirtualNetwork $vnet
    Get-AzDelegation -Subnet $subnet
    
  3. Om ditt undernät inte har delegerats till Microsoft.Web/serverFarms lägger du till delegering med hjälp av dessa kommandon.

    $subnet = Add-AzDelegation -Name "myDelegation" -ServiceName "Microsoft.Web/serverFarms" -Subnet $subnet
    Set-AzVirtualNetwork -VirtualNetwork $vnet
    
  4. Konfigurera integrering av virtuella nätverk.

    $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
    

    Kommentar

    Om webbappen finns i en annan prenumeration än ett virtuellt nätverk kan du använda Set-AzContext -Subscription "xxxx-xxxx-xxxx-xxxx" kommandot för att ange den aktuella prenumerationskontexten. Ange den aktuella prenumerationskontexten till prenumerationen där webbappen distribuerades.