Dela via


Använda privata slutpunkter för Azure App Service-appar

Du kan använda en privat slutpunkt för dina Azure App Service-appar. Med den privata slutpunkten kan klienter som finns i ditt privata nätverk få säker åtkomst till en app via Azure Private Link. Den privata slutpunkten använder en IP-adress från ditt virtuella Azure-nätverksadressutrymme. Nätverkstrafik mellan en klient i ditt privata nätverk och appen går över det virtuella nätverket och Private Link i Microsofts stamnätverk. Den här konfigurationen eliminerar exponering från det offentliga Internet.

När du använder en privat slutpunkt för din app kan du:

  • Skydda din app när du konfigurerar den privata slutpunkten och inaktivera åtkomst till offentliga nätverk, vilket eliminerar offentlig exponering.
  • Anslut på ett säkert sätt till din app från lokala nätverk som ansluter till det virtuella nätverket med hjälp av en privat VPN- eller ExpressRoute-peering.
  • Undvik dataexfiltrering från ditt virtuella nätverk.

Viktigt!

Privata slutpunkter är tillgängliga för Windows- och Linux-appar, containerbaserade eller inte, som finns i följande App Service-planer: Basic, Standard, PremiumV2, PremiumV3, IsolatedV2, Functions Premium (kallas ibland Elastic Premium-planen).

Begreppsmässig översikt

En privat slutpunkt är ett nätverksgränssnitt för din App Service-app i ett undernät i det virtuella nätverket.

När du skapar en privat slutpunkt för din app ger den säker anslutning mellan klienter i ditt privata nätverk och din app. Den privata slutpunkten tilldelas en IP-adress från IP-adressintervallet för ditt virtuella nätverk. Anslutningen mellan den privata slutpunkten och appen använder en säker privat länk. Den privata slutpunkten används endast för inkommande trafik till din app. Utgående trafik använder inte den privata slutpunkten. Du kan mata in utgående trafik till nätverket i ett annat undernät via integreringsfunktionen för virtuella nätverk.

Varje slot för en app konfigureras separat. Du kan använda upp till 100 privata slutpunkter per slot. Du kan inte dela en privat slutpunkt mellan olika slotar. Namnet för en subresource slot är sites-<slot-name>.

Det undernät som du använder för att ansluta den privata slutpunkten kan ha andra resurser i den. Du behöver inte ett dedikerat tomt subnät.

Du kan också distribuera den privata slutpunkten i en annan region än din app.

Anteckning

Integreringsfunktionen för virtuella nätverk kan inte använda samma undernät som den privata slutpunkten.

Säkerhetsfrågor

Privata slutpunkter och offentlig åtkomst kan samexistera i en app. Mer information finns i den här översikten över åtkomstbegränsningar.

Se till att inaktivera åtkomsten till det offentliga nätverket när du aktiverar privata slutpunkter i din app för att säkerställa isolering. Du kan aktivera flera privata slutpunkter i andra virtuella nätverk och undernät, inklusive virtuella nätverk i andra regioner.

Åtkomstbegränsningsreglerna för din app utvärderas inte för trafik via den privata slutpunkten. Du kan eliminera dataexfiltreringsrisken från det virtuella nätverket. Ta bort alla NSG-regler (Network Security Group) där destinationen är taggen Internet eller Azure Services.

Du hittar klientkällans IP-adress i appens HTTP-webbloggar. Den här funktionen implementeras med hjälp av TCP-proxyn (Transmission Control Protocol), som vidarebefordrar klientens IP-egenskap till appen. Mer information finns i Hämta anslutningsinformation med hjälp av TCP Proxy v2.

Diagram som visar en global översikt över privata App Service-slutpunkter.

DNS (Domännamnssystem)

När du använder privat slutpunkt för App Service-appar måste den begärda URL:en matcha appens adress. Utan en privat slutpunkt är det offentliga namnet på webbappen som standard ett kanoniskt namn på klustret. Namnuppslagningen är till exempel:

Namn Typ Värde
mywebapp.azurewebsites.net CNAME clustername.azurewebsites.windows.net
clustername.azurewebsites.windows.net CNAME cloudservicename.cloudapp.net
cloudservicename.cloudapp.net A 192.0.2.13

När du distribuerar en privat slutpunkt uppdaterar metoden dns-posten (domain name system) så att den pekar på det kanoniska namnet: mywebapp.privatelink.azurewebsites.net. Namnuppslagningen är till exempel:

Namn Typ Värde Anmärkning
mywebapp.azurewebsites.net CNAME mywebapp.privatelink.azurewebsites.net
mywebapp.privatelink.azurewebsites.net CNAME clustername.azurewebsites.windows.net
clustername.azurewebsites.windows.net CNAME cloudservicename.cloudapp.net
cloudservicename.cloudapp.net A 192.0.2.13 <- Den här offentliga IP-adressen är inte din privata slutpunkt. Du får ett 403-fel.

Du måste konfigurera en privat DNS-server eller en privat Azure DNS-zon. För tester kan du ändra värdposten för testdatorn. Den DNS-zon som du behöver skapa är: privatelink.azurewebsites.net. Registrera posten för din app med en A post och ip-adressen för den privata slutpunkten. Med Privata DNS-zongrupper i Azure läggs DNS-posterna automatiskt till i den privata DNS-zonen.

Namnuppslagningen är till exempel:

Namn Typ Värde Anmärkning
mywebapp.azurewebsites.net CNAME mywebapp.privatelink.azurewebsites.net <--Azure skapar den här CNAME posten i Azure Public DNS för att peka appadressen till den privata slutpunktsadressen.
mywebapp.privatelink.azurewebsites.net A 10.10.10.8 <--Du hanterar den här posten i DNS-systemet för att peka på din privata slutpunkts-IP-adress.

När du konfigurerar den här DNS-konfigurationen kan du nå din app privat med standardnamnet mywebapp.azurewebsites.net. Du måste använda det här namnet eftersom standardcertifikatet har utfärdats för *.azurewebsites.net.

Anpassat domännamn

Om du behöver använda ett anpassat domännamn lägger du till det anpassade namnet i din app. Du måste verifiera det anpassade namnet som vilket anpassat namn som helst, med hjälp av offentlig DNS-upplösning. Mer information finns i anpassad DNS-validering.

I din anpassade DNS-zon måste du uppdatera DNS-posten så att den pekar på den privata slutpunkten. Om din app redan har konfigurerats med DNS-upplösning för standardvärdnamnet är det bästa sättet att lägga till en CNAME post för den anpassade domänen som pekar till mywebapp.azurewebsites.net. Om du bara vill att det anpassade domännamnet ska matcha den privata slutpunkten kan du lägga till en A post med ip-adressen för den privata slutpunkten direkt.

Kudu/scm-slutpunkt

För Kudu-konsolen eller Kudu REST API (för distribution med lokala Azure DevOps Services-agenter) måste du till exempel skapa en andra post som pekar på ip-adressen för den privata slutpunkten i din privata Azure DNS-zon eller din anpassade DNS-server. Den första är för din app och den andra är för SCM (källkontrollhantering) för din app. Med Privata DNS-zongrupper i Azure läggs scm-slutpunkten till automatiskt.

Namn Typ Värde
mywebapp.privatelink.azurewebsites.net A PrivateEndpointIP
mywebapp.scm.privatelink.azurewebsites.net A PrivateEndpointIP

App Service-miljö v3 särskilda överväganden

För att aktivera en privat slutpunkt för appar som är värd i en IsolatedV2-plan (App Service Environment v3), aktivera stöd för privata slutpunkter på App Service Environment-nivå. Du kan aktivera funktionen med hjälp av Azure-portalen i konfigurationsfönstret för App Service Environment eller via följande CLI:

az appservice ase update --name myasename --allow-new-private-endpoint-connections true

Specifika krav

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 . Information om hur du registrerar providern finns i Registrera resursprovider. Du registrerar providern automatiskt när du skapar den första webbappen i en prenumeration.

Prissättning

Prisinformation finns i Priser för Azure Private Link.

Begränsningar

  • När du använder en Azure-funktion i Elastic Premium-planen med en privat slutpunkt måste du ha direkt nätverksåtkomst för att köra funktionen i Azure-portalen. Annars får du ett HTTP 403-fel. Webbläsaren måste kunna nå den privata slutpunkten för att kunna köra funktionen från Azure Portal.
  • Du kan ansluta upp till 100 privata slutpunkter till en viss app.
  • Fjärrfelsökningsfunktioner är inte tillgängliga via den privata slutpunkten. Vi rekommenderar att du distribuerar koden till ett fack och felsöker den på distans där.
  • FTP-åtkomst tillhandahålls via den inkommande offentliga IP-adressen. En privat slutpunkt stöder inte FTP-åtkomst till appen.
  • IP-baserad TLS stöds inte med privata slutpunkter.
  • Appar som du konfigurerar med privata slutpunkter kan inte ta emot offentlig trafik som kommer från undernät med en Microsoft.Web tjänstslutpunkt aktiverad och som inte kan använda tjänstslutpunktsbaserade regler för åtkomstbegränsning.
  • Namngivning av privata slutpunkter måste följa de regler som definierats för resurser av typen Microsoft.Network/privateEndpoints . Mer information finns i Namngivningsregler och begränsningar.

För aktuell information om begränsningar, se den här dokumentationen.