Verkeer beveiligen tussen standaard logische apps en virtuele Azure-netwerken met behulp van privé-eindpunten
Van toepassing op: Azure Logic Apps (Standard)
Als u veilig en privé wilt communiceren tussen uw werkstroom in een standaard logische app en een virtueel Azure-netwerk, kunt u privé-eindpunten instellen voor inkomend verkeer en virtuele netwerkintegratie gebruiken voor uitgaand verkeer.
Een privé-eindpunt is een netwerkinterface waarmee privé en veilig verbinding wordt gemaakt met een service die door Azure Private Link mogelijk wordt gemaakt. De service kan een Azure-service zijn, zoals Azure Logic Apps, Azure Storage, Azure Cosmos DB, SQL, of uw eigen Private Link Service. Het privé-eindpunt maakt gebruik van een privé-IP-adres van uw virtuele netwerk, waarmee de service feitelijk in uw virtuele netwerk wordt geplaatst.
In dit artikel wordt beschreven hoe u toegang instelt via privé-eindpunten voor inkomend verkeer en integratie van virtuele netwerken voor uitgaand verkeer.
Raadpleeg de volgende documentatie voor meer informatie:
- Wat is een privé-eindpunt van Azure?
- Privé-eindpunten - Uw app integreren met een virtueel Azure-netwerk
- Wat is Azure Private Link?
- Integratie van regionaal virtueel netwerk?
Vereisten
Een nieuw of bestaand virtueel Azure-netwerk met een subnet zonder delegaties. Dit subnet wordt gebruikt om privé-IP-adressen uit het virtuele netwerk te implementeren en toe te wijzen.
Raadpleeg de volgende documentatie voor meer informatie:
Installeer of gebruik een hulpprogramma waarmee HTTP-aanvragen kunnen worden verzonden om uw oplossing te testen, bijvoorbeeld:
- Visual Studio Code met een extensie van Visual Studio Marketplace
- PowerShell Invoke-RestMethod
- Microsoft Edge - Hulpprogramma voor netwerkconsole
- Bruno
- curl
Let op
Voor scenario's waarin u gevoelige gegevens hebt, zoals referenties, geheimen, toegangstokens, API-sleutels en andere vergelijkbare informatie, moet u een hulpprogramma gebruiken waarmee uw gegevens worden beveiligd met de benodigde beveiligingsfuncties, offline of lokaal werken, uw gegevens niet worden gesynchroniseerd met de cloud en u zich niet hoeft aan te melden bij een onlineaccount. Op deze manier vermindert u het risico dat gevoelige gegevens openbaar worden gemaakt voor het publiek.
Inkomend verkeer instellen via privé-eindpunten
Voer deze stappen op hoog niveau uit om inkomend verkeer naar uw werkstroom te beveiligen:
Start uw werkstroom met een ingebouwde trigger die binnenkomende aanvragen kan ontvangen en verwerken, zoals de aanvraagtrigger of de HTTP + Webhook-trigger . Met deze trigger wordt uw werkstroom ingesteld met een aanroepbaar eindpunt.
Voeg een privé-eindpunt voor uw logische app-resource toe aan uw virtuele netwerk.
Voer testoproepen uit om de toegang tot het eindpunt te controleren. Als u de werkstroom van uw logische app wilt aanroepen nadat u dit eindpunt hebt ingesteld, moet u zijn verbonden met het virtuele netwerk.
Overwegingen voor binnenkomend verkeer via privé-eindpunten
Als deze toegankelijk zijn van buiten uw virtuele netwerk, heeft de bewakingsweergave geen toegang tot de invoer en uitvoer van triggers en acties.
Beheerde API-webhooktriggers (pushtriggers ) en acties werken niet omdat ze worden uitgevoerd in de openbare cloud en niet kunnen worden aangeroepen in uw privénetwerk. Ze hebben een openbaar eindpunt nodig om oproepen te ontvangen. Dergelijke triggers bevatten bijvoorbeeld de Dataverse-trigger en de Event Grid-trigger.
Als u de Office 365 Outlook-trigger gebruikt, wordt de werkstroom slechts elk uur geactiveerd.
Implementatie vanuit Visual Studio Code of Azure CLI werkt alleen vanuit het virtuele netwerk. U kunt het Implementatiecentrum gebruiken om uw logische app te koppelen aan een GitHub-opslagplaats. Vervolgens kunt u de Azure-infrastructuur gebruiken om uw code te bouwen en te implementeren.
Voordat GitHub-integratie werkt, verwijdert u de
WEBSITE_RUN_FROM_PACKAGE
instelling uit uw logische app of stelt u de waarde in op0
.Het inschakelen van Private Link heeft geen invloed op uitgaand verkeer, dat nog steeds via de App Service-infrastructuur loopt.
Vereisten voor inkomend verkeer via privé-eindpunten
Naast de installatie van het virtuele netwerk in de vereisten op het hoogste niveau, moet u een nieuwe of bestaande werkstroom voor logische standaard-apps hebben die begint met een ingebouwde trigger die aanvragen kan ontvangen.
Met de aanvraagtrigger wordt bijvoorbeeld een eindpunt in uw werkstroom gemaakt waarmee binnenkomende aanvragen van andere bellers, inclusief werkstromen, kunnen worden ontvangen en verwerkt. Dit eindpunt biedt een URL die u kunt gebruiken om de werkstroom aan te roepen en te activeren. In dit voorbeeld worden de stappen voortgezet met de aanvraagtrigger .
Raadpleeg Ontvangen en reageren op binnenkomende HTTP-aanvragen met behulp van Azure Logic Apps voor meer informatie.
De werkstroom maken
Als u dat nog niet hebt gedaan, maakt u een logische app met één tenant en een lege werkstroom.
Nadat de ontwerpfunctie is geopend, voegt u de aanvraagtrigger toe als de eerste stap in uw werkstroom.
Voeg op basis van uw scenariovereisten andere acties toe die u in uw werkstroom wilt uitvoeren.
Sla uw werkstroom op als u gereed bent.
Raadpleeg werkstromen voor logische apps met één tenant maken in Azure Logic Apps voor meer informatie.
De eindpunt-URL kopiëren
Selecteer Overzicht in het werkstroommenu.
Kopieer en sla op de pagina Overzicht de werkstroom-URL op voor later gebruik.
Als u de URL wilt testen en de werkstroom wilt activeren, verzendt u een HTTP-aanvraag naar de URL met behulp van uw HTTP-aanvraagprogramma en de bijbehorende instructies.
Privé-eindpuntverbinding instellen
Selecteer Netwerken in het resourcemenu van de logische app onder Instellingen.
Selecteer op de pagina Netwerken in de sectie Voor binnenkomend verkeer de koppeling naast privé-eindpunten.
Selecteer Express of Geavanceerd toevoegen>op de pagina Privé-eindpuntverbindingen.
Zie Een privé-eindpunt maken voor meer informatie over de optie Geavanceerd.
Geef in het deelvenster Privé-eindpunt toevoegen de gevraagde informatie over het eindpunt op.
Raadpleeg de eigenschappen van privé-eindpunten voor meer informatie.
Nadat Azure het privé-eindpunt heeft geïmplementeerd, probeert u de werkstroom-URL opnieuw aan te roepen.
Deze keer krijgt u een verwachte
403 Forbidden
fout, wat betekent dat het privé-eindpunt is ingesteld en correct werkt.Als u wilt controleren of de verbinding correct werkt, maakt u een virtuele machine in hetzelfde virtuele netwerk met het privé-eindpunt en probeert u de werkstroom van de logische app aan te roepen.
Uitgaand verkeer instellen met behulp van integratie van virtuele netwerken
Als u uitgaand verkeer van uw logische app wilt beveiligen, kunt u uw logische app integreren met een virtueel netwerk. Maak en test eerst een voorbeeldwerkstroom. Vervolgens kunt u integratie van virtuele netwerken instellen.
Overwegingen voor uitgaande verkeer via integratie van virtuele netwerken
Het instellen van de integratie van virtuele netwerken is alleen van invloed op uitgaand verkeer. Als u binnenkomend verkeer wilt beveiligen, dat het gedeelde App Service-eindpunt blijft gebruiken, raadpleegt u Binnenkomend verkeer instellen via privé-eindpunten.
U kunt de grootte van het subnet niet wijzigen na de toewijzing, dus gebruik een subnet dat groot genoeg is om de schaal aan te passen die uw app mogelijk bereikt. Gebruik een
/26
subnet met 64 adressen om problemen met subnetcapaciteit te voorkomen. Als u het subnet voor integratie van virtuele netwerken met Azure Portal maakt, moet u deze gebruiken/27
als de minimale subnetgrootte.De Azure Logic Apps-runtime werkt alleen als u een ononderbroken verbinding hebt met de back-endopslag. Als de back-endopslag beschikbaar is voor het virtuele netwerk via een privé-eindpunt, moet u ervoor zorgen dat de volgende poorten zijn geopend:
Bronpoort Doelpoort Bron Bestemming Protocol Doel * 443 Subnet geïntegreerd met de logische standaard-app Opslagaccount TCP Opslagaccount * 445 Subnet geïntegreerd met de logische standaard-app Opslagaccount TCP SMB-bestandsshare (Server Message Block) Beheerde connectors die door Azure worden gehost, werken alleen als u een ononderbroken verbinding hebt met de beheerde API-service. Zorg ervoor dat met integratie van virtuele netwerken geen firewall- of netwerkbeveiligingsbeleid deze verbindingen blokkeert. Als uw virtuele netwerk gebruikmaakt van een netwerkbeveiligingsgroep (NSG), door de gebruiker gedefinieerde routetabel (UDR) of een firewall, moet u ervoor zorgen dat het virtuele netwerk uitgaande verbindingen toestaat met alle IP-adressen van beheerde connectors in de bijbehorende regio. Anders werken door Azure beheerde connectors niet.
Raadpleeg de volgende documentatie voor meer informatie:
- Een app integreren met een virtueel Azure-netwerk
- Netwerkbeveiligingsgroepen
- Routering van verkeer in virtuele netwerken
De werkstroom maken en testen
Als u dat nog niet hebt gedaan, maakt u in Azure Portal een logische app met één tenant en een lege werkstroom.
Nadat de ontwerpfunctie is geopend, voegt u de aanvraagtrigger toe als de eerste stap in uw werkstroom.
Voeg een HTTP-actie toe om een interne service aan te roepen die niet beschikbaar is via internet en wordt uitgevoerd met een privé-IP-adres, zoals
10.0.1.3
.Sla uw werkstroom op als u gereed bent.
Voer de werkstroom handmatig uit vanuit de ontwerpfunctie.
De HTTP-actie mislukt. Dit is standaard en verwacht omdat de werkstroom wordt uitgevoerd in de cloud en geen toegang heeft tot uw interne service.
Integratie van virtueel netwerk instellen
Selecteer In Azure Portal in het resourcemenu van de logische app onder Instellingen de optie Netwerken.
Selecteer op de pagina Netwerken in de sectie Configuratie van uitgaand verkeer de koppeling naast de integratie van het virtuele netwerk.
Selecteer Op de pagina Integratie van virtueel netwerk de optie Integratie van virtueel netwerk toevoegen.
Selecteer in het deelvenster Integratie van virtueel netwerk toevoegen het abonnement, het virtuele netwerk dat verbinding maakt met uw interne service en het subnet waar u de logische app wilt toevoegen. Wanneer u klaar bent, selecteert u Verbinding maken.
Op de pagina Integratie van virtueel netwerk is standaard de instelling uitgaand internetverkeer geselecteerd, waarmee al het uitgaande verkeer via het virtuele netwerk wordt gerouteerd. In dit scenario wordt de app-instelling met de naam WEBSITE_VNET_ROUTE_ALL genegeerd.
Als u deze app-instelling wilt vinden, selecteert u in het resourcemenu van de logische app onder Instellingen omgevingsvariabelen.
Als u uw eigen DNS (Domain Name Server) gebruikt met uw virtuele netwerk, voegt u de WEBSITE_DNS_SERVER app-instelling toe, als er geen bestaat en stelt u de waarde in op het IP-adres voor uw DNS. Als u een secundaire DNS hebt, voegt u een andere app-instelling toe met de naam WEBSITE_DNS_ALT_SERVER en stelt u de waarde in op het IP-adres voor uw secundaire DNS.
Nadat Azure de integratie van het virtuele netwerk heeft geïmplementeerd, probeert u de werkstroom opnieuw uit te voeren.
De HTTP-actie wordt nu uitgevoerd.