Verkeer beveiligen tussen logische Standaard-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 logische standaard-app en een virtueel Azure-netwerk, kunt u privé-eindpunten instellen voor binnenkomend 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 via privé-eindpunten instelt voor binnenkomend verkeer en integratie van virtuele netwerken voor uitgaand verkeer.

Raadpleeg de volgende documentatie voor meer informatie:

Vereisten

U moet een nieuw of bestaand virtueel Azure-netwerk hebben dat een subnet zonder delegaties bevat. Dit subnet wordt gebruikt om privé-IP-adressen van het virtuele netwerk te implementeren en toe te wijzen.

Raadpleeg de volgende documentatie voor meer informatie:

Binnenkomend verkeer instellen via privé-eindpunten

Voer de volgende stappen op hoog niveau uit om binnenkomend verkeer naar uw werkstroom te beveiligen:

  1. Start uw werkstroom met een ingebouwde trigger die binnenkomende aanvragen kan ontvangen en verwerken, zoals de aanvraagtrigger of de HTTP- en webhook-trigger. Met deze trigger wordt uw werkstroom ingesteld met een aanroepbaar eindpunt.

  2. Voeg een privé-eindpunt voor uw logische app-resource toe aan uw virtuele netwerk.

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

  • Bij toegang van buiten het 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 particuliere netwerk. Ze hebben een openbaar eindpunt nodig om oproepen te ontvangen. Dergelijke triggers omvatten bijvoorbeeld de Dataverse-trigger en de Event Grid-trigger.

  • Als u de Office 365 Outlook-trigger gebruikt, wordt de werkstroom slechts per 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.

    GitHub-integratie werkt alleen als u de WEBSITE_RUN_FROM_PACKAGE instelling uit uw logische app verwijdert of de waarde instelt op 0.

  • Het inschakelen van Private Link heeft geen invloed op uitgaand verkeer, dat nog steeds door de App Service-infrastructuur stroomt.

Vereisten voor binnenkomend verkeer via privé-eindpunten

Naast het instellen van het virtuele netwerk in de vereisten op het hoogste niveau, moet u een nieuwe of bestaande standaardwerkstroom voor logische apps hebben die begint met een ingebouwde trigger die aanvragen kan ontvangen.

Met de trigger Aanvraag maakt u bijvoorbeeld een eindpunt in uw werkstroom dat binnenkomende aanvragen van andere bellers, waaronder werkstromen, kan ontvangen en verwerken. Dit eindpunt biedt een URL die u kunt gebruiken om de werkstroom aan te roepen en te activeren. In dit voorbeeld gaan de stappen verder met de aanvraagtrigger.

Zie Ontvangen en reageren op binnenkomende HTTP-aanvragen met behulp van Azure Logic Apps voor meer informatie.

De werkstroom maken

  1. Als u dat nog niet hebt gedaan, maakt u een logische app op basis van één tenant en een lege werkstroom.

  2. Nadat de ontwerpfunctie is geopend, voegt u de aanvraagtrigger toe als de eerste stap in uw werkstroom.

  3. Voeg op basis van uw scenariovereisten andere acties toe die u wilt uitvoeren in uw werkstroom.

  4. Sla uw werkstroom op wanneer u klaar bent.

Zie Werkstromen voor logische apps met één tenant maken in Azure Logic Apps voor meer informatie.

De eindpunt-URL kopiëren

  1. Selecteer Overzicht in het werkstroommenu.

  2. Kopieer op de pagina Overzicht de werkstroom-URL en sla deze op voor later gebruik.

    Als u de werkstroom wilt activeren, roept u deze URL aan of verzendt u een aanvraag.

  3. Zorg ervoor dat de URL werkt door aan te roepen of een aanvraag naar de URL te verzenden. U kunt elk hulpprogramma gebruiken om de aanvraag te verzenden, bijvoorbeeld Postman.

Privé-eindpuntverbinding instellen

  1. Selecteer in het menu van de logische app onder Instellingende optie Netwerken.

  2. Selecteer op de pagina Netwerken op de kaart Binnenkomend verkeer de optie Privé-eindpunten.

  3. Selecteer toevoegen op de privé-eindpuntverbindingen.

  4. Geef in het deelvenster Privé-eindpunt toevoegen dat wordt geopend de gevraagde informatie over het eindpunt op.

    Raadpleeg Eigenschappen van privé-eindpunt voor meer informatie.

  5. Nadat Azure het privé-eindpunt heeft ingesteld, probeert u opnieuw om de werkstroom-URL aan te roepen.

    Deze keer krijgt u een verwachte 403 Forbidden fout, wat betekent dat het privé-eindpunt is ingesteld en correct werkt.

  6. Om ervoor te zorgen dat 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 de integratie van virtuele netwerken instellen.

Overwegingen voor uitgaand 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 App Service gedeelde eindpunt blijft gebruiken, raadpleegt u Binnenkomend verkeer instellen via privé-eindpunten.

  • U kunt de grootte van het subnet na de toewijzing niet wijzigen, dus gebruik een subnet dat groot genoeg is voor de schaal die uw app mogelijk bereikt. Gebruik een /26 subnet met 64 adressen om problemen met subnetcapaciteit te voorkomen. Als u het subnet maakt voor integratie van virtuele netwerken met de Azure Portal, moet u als minimale subnetgrootte gebruiken/27.

  • 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 Doel Protocol Doel
    * 443 Subnet geïntegreerd met logische standaard-app Storage-account TCP Storage-account
    * 445 Subnet geïntegreerd met logische standaard-app Storage-account TCP SMB-bestandsshare (Server Message Block)
  • Door Azure gehoste beheerde connectors werken alleen als u een ononderbroken verbinding hebt met de beheerde API-service. Met de integratie van virtuele netwerken moet u ervoor zorgen dat deze verbindingen niet worden geblokkeerd door een firewall of netwerkbeveiligingsbeleid. 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 de beheerde connector in de bijbehorende regio. Anders werken door Azure beheerde connectors niet.

Raadpleeg de volgende documentatie voor meer informatie:

De werkstroom maken en testen

  1. Als u dat nog niet hebt gedaan, maakt u in de Azure Portal een logische app met één tenant en een lege werkstroom.

  2. Nadat de ontwerpfunctie is geopend, voegt u de aanvraagtrigger toe als de eerste stap in uw werkstroom.

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

  4. Sla uw werkstroom op wanneer u klaar bent.

  5. Voer de werkstroom handmatig uit vanuit de ontwerpfunctie.

    De HTTP-actie mislukt. Dit is standaard en verwacht omdat de werkstroom in de cloud wordt uitgevoerd en geen toegang heeft tot uw interne service.

Integratie van virtuele netwerken instellen

  1. Selecteer in het Azure Portal in het resourcemenu van de logische app onder Instellingende optie Netwerken.

  2. Selecteer in het deelvenster Netwerken op de kaart Uitgaand verkeer de optie VNet-integratie.

  3. Selecteer in het deelvenster VNet-integratiede optie Vnet toevoegen.

  4. Selecteer in het deelvenster VNet-integratie toevoegen het abonnement en het virtuele netwerk dat verbinding maakt met uw interne service.

    Nadat u de integratie van het virtuele netwerk hebt toegevoegd, is in het deelvenster VNet-integratie de instelling Route all standaard ingeschakeld. Met deze instelling wordt al het uitgaande verkeer via het virtuele netwerk gerouteerd. Wanneer deze instelling is ingeschakeld, wordt de WEBSITE_VNET_ROUTE_ALL app-instelling genegeerd.

  5. Als u uw eigen domeinnaamserver (DNS) gebruikt met uw virtuele netwerk, stelt u de app-instelling van WEBSITE_DNS_SERVER de logische app-resource 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_SERVERen stelt u de waarde ook in op het IP-adres voor uw DNS.

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

Volgende stappen