Identifiera App Service-nätverksfunktioner
Som standard är appar som finns i App Service tillgängliga direkt via Internet och kan bara nå internetbaserade slutpunkter. För många program måste du styra inkommande och utgående nätverkstrafik.
Det finns två huvudsakliga distributionstyper för Azure App Service:
- Den offentliga tjänsten för flera klientorganisationer är värd för App Service-planer i pris-SKU:erna Kostnadsfri, Delad, Basic, Standard, Premium, PremiumV2 och PremiumV3.
- App Service Environment (ASE) med en enda klientorganisation är värd för isolerade SKU App Service-planer direkt i ditt virtuella Azure-nätverk.
Multitenant App Service-nätverksfunktioner
Azure App Service är ett distribuerat system. Rollerna som hanterar inkommande HTTP- eller HTTPS-begäranden kallas klientdelar. De roller som är värdar för kundens arbetsbelastning kallas arbetare. Alla roller i en App Service-distribution finns i ett nätverk med flera klienter. Eftersom det finns många olika kunder i samma App Service-skalningsenhet kan du inte ansluta App Service-nätverket direkt till nätverket.
I stället för att ansluta nätverken behöver du funktioner för att hantera de olika aspekterna av programkommunikation. De funktioner som hanterar begäranden till din app kan inte användas för att lösa problem när du gör anrop från din app. På samma sätt kan inte de funktioner som löser problem med anrop från din app användas för att lösa problem med din app.
Inkommande funktioner | Utgående funktioner |
---|---|
App-tilldelad adress | Hybridanslutningar |
Åtkomstbegränsningar | Gateway-nödvändig integrering av virtuellt nätverk |
Tjänstslutpunkter | Integrering av virtuellt nätverk |
Privata slutpunkter |
Du kan blanda funktionerna för att lösa dina problem med några få undantag. Följande inkommande användningsfall är exempel på hur du använder App Service-nätverksfunktioner för att styra inkommande trafik till din app.
Användningsfall för inkommande trafik | Funktion |
---|---|
Stöd för IP-baserade SSL-behov för din app | App-tilldelad adress |
Stöd för ej delad dedikerad inkommande adress för din app | App-tilldelad adress |
Begränsa åtkomsten till din app från en uppsättning väldefinierade adresser | Åtkomstbegränsningar |
Standardbeteende för nätverk
Azure App Service-skalningsenheter stöder många kunder i varje distribution. Den kostnadsfria och delade SKU-planen är värd för kundarbetsbelastningar för flera klientarbetare. De grundläggande och högre abonnemangen är värdar för kundarbetsbelastningar som endast är dedikerade till en App Service-plan. Om du har en Standard App Service-plan körs alla appar i planen på samma arbetare. Om du skalar ut arbetaren replikeras alla appar i App Service-planen på en ny arbetare för varje instans i din App Service-plan.
Utgående adresser
De virtuella arbetsdatorerna delas till stor del upp av App Service-planerna. De kostnadsfria, delade, grundläggande, standard- och Premium-abonnemangen använder alla samma typ av arbetsdator. PremiumV2-planen använder en annan typ av virtuell dator. PremiumV3 använder ännu en typ av virtuell dator. När du ändrar den virtuella datorfamiljen får du en annan uppsättning utgående adresser.
Det finns många adresser som används för utgående anrop. De utgående adresser som används av din app för att göra utgående anrop visas i egenskaperna för din app. Dessa adresser delas av alla appar som körs i samma arbetsfamilj för virtuella datorer i App Service-distributionen. Om du vill se alla adresser som appen kan använda i en skalningsenhet finns det en egenskap som heter possibleOutboundIpAddresses
som visar dem.
Ta reda på utgående IP-adresser
Om du vill ta reda på de utgående IP-adresser som för närvarande används av din app i Azure-portalen väljer du Egenskaper i appens vänstra navigering.
Du hittar samma information genom att köra följande Azure CLI-kommando i Cloud Shell. De visas i fältet Ytterligare utgående IP-adresser.
az webapp show \
--resource-group <group_name> \
--name <app_name> \
--query outboundIpAddresses \
--output tsv
Om du vill hitta alla möjliga utgående IP-adresser för din app, oavsett prisnivåer, kör du följande kommando i Cloud Shell.
az webapp show \
--resource-group <group_name> \
--name <app_name> \
--query possibleOutboundIpAddresses \
--output tsv