Lezen in het Engels

Delen via


Standard logische apps met één tenant implementeren in privéopslagaccounts met behulp van privé-eindpunten

Van toepassing op: Azure Logic Apps (Standard)

Wanneer u een resource voor een logische app met één tenant maakt, moet u een opslagaccount hebben voor het opslaan van artefacten voor logische apps. U kunt de toegang tot dit opslagaccount beperken, zodat alleen de resources in een virtueel netwerk verbinding kunnen maken met uw werkstroom voor logische apps. Azure Storage biedt ondersteuning voor het toevoegen van privé-eindpunten aan uw opslagaccount.

In dit artikel worden de stappen beschreven die u moet volgen voor het implementeren van dergelijke logische apps voor beveiligde privéopslagaccounts.

Raadpleeg de volgende documentatie voor meer informatie:

Implementeren met behulp van Azure Portal of Visual Studio Code

Voor deze implementatiemethode is tijdelijke openbare toegang tot uw opslagaccount vereist. Als u openbare toegang niet kunt inschakelen vanwege het beleid van uw organisatie, kunt u uw logische app nog steeds implementeren in een privéopslagaccount. U moet echter implementeren met een Azure Resource Manager-sjabloon (ARM-sjabloon), die in een latere sectie wordt beschreven.

Notitie

Een uitzondering op de vorige regel is dat u Azure Portal kunt gebruiken om uw logische app te implementeren in een App Service Environment, zelfs als het opslagaccount is beveiligd met een privé-eindpunt. U hebt echter verbinding nodig tussen het subnet dat wordt gebruikt door de App Service-omgeving en het subnet dat wordt gebruikt door het privé-eindpunt van het opslagaccount.

  1. Maak verschillende privé-eindpunten voor elk van de services Table, Queue, Blob en File Storage.

  2. Schakel tijdelijke openbare toegang in voor uw opslagaccount wanneer u uw logische app implementeert.

    1. Open uw opslagaccountresource in Azure Portal.

    2. Selecteer Netwerken in het resourcemenu van het opslagaccount onder Beveiliging en netwerken.

    3. Selecteer In het deelvenster Netwerken op het tabblad Firewalls en virtuele netwerken onder Toegang toestaan vanuit alle netwerken.

  3. Implementeer uw logische app-resource met behulp van Azure Portal of Visual Studio Code.

  4. Nadat de implementatie is voltooid, schakelt u integratie van virtuele netwerken tussen uw logische app en de privé-eindpunten in het virtuele netwerk in dat is verbonden met uw opslagaccount.

    1. Open uw logische app-resource in Azure Portal.

    2. Selecteer Netwerken in het resourcemenu van de logische app onder Instellingen.

    3. Selecteer in de sectie Voor uitgaand verkeer, naast integratie van virtueel netwerk, de optie Niet geconfigureerd>Integratie van virtueel netwerk toevoegen.

    4. Selecteer in het deelvenster Integratie van virtueel netwerk toevoegen dat wordt geopend uw Azure-abonnement en uw virtuele netwerk.

    5. Selecteer in de lijst Subnet het subnet waaraan u uw logische app wilt toevoegen. Wanneer u klaar bent, selecteert u Verbinding maken.

  5. Voer de volgende stappen uit om toegang te krijgen tot de werkstroomgegevens van uw logische app via het virtuele netwerk:

    1. Selecteer in het resourcemenu van de logische app onder Instellingen de optie Omgevingsvariabelen.

    2. Voeg op het tabblad App-instellingen de WEBSITE_CONTENTOVERVNET app-instelling toe, als deze nog niet bestaat en stel de waarde in op 1.

    3. Als u uw eigen DNS (Domain Name Server) gebruikt met uw virtuele netwerk, voegt u de WEBSITE_DNS_SERVER-app-instelling toe, als deze nog niet 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.

  6. Nadat u deze app-instellingen hebt toegepast, kunt u openbare toegang verwijderen uit uw opslagaccount.

    1. Open uw opslagaccountresource in Azure Portal.

    2. Selecteer Netwerken in het resourcemenu van het opslagaccount onder Beveiliging en netwerken.

    3. Schakel in het deelvenster Netwerken, op het tabblad Firewalls en virtuele netwerken, onder Toegang toestaan vanuit, geselecteerde netwerken uit en voeg indien nodig virtuele netwerken toe.

    Notitie

    Uw logische app kan een onderbreking ondervinden omdat de connectiviteitsswitch tussen openbare en privé-eindpunten enige tijd kan duren. Deze onderbreking kan ertoe leiden dat uw werkstromen tijdelijk verdwijnen. Als dit gedrag zich voordoet, kunt u proberen uw werkstromen opnieuw te laden door de logische app opnieuw te starten en enkele minuten te wachten.

Implementeren met behulp van een Azure Resource Manager-sjabloon

Voor deze implementatiemethode is geen openbare toegang tot het opslagaccount vereist. Voor een voorbeeld van een ARM-sjabloon raadpleegt u Logische app implementeren met behulp van een beveiligd opslagaccount met privé-eindpunten. Met de voorbeeldsjabloon worden de volgende resources gemaakt:

  • Een opslagaccount dat het openbare verkeer weigert
  • Een virtueel Azure-netwerk en subnetten
  • Privé-DNS zones en privé-eindpunten voor blob-, bestands-, wachtrij- en tabelservices
  • Een bestandsshare voor de Runtimemappen en bestanden van Azure Logic Apps. Raadpleeg de host- en app-instellingen voor logische apps in Azure Logic Apps met één tenant voor meer informatie.
  • Een App Service-plan (Workflow Standard WS1) voor het hosten van standard-resources voor logische apps
  • Een resource voor een standaard logische app met een netwerkconfiguratie die is ingesteld voor het gebruik van virtuele netwerkintegratie. Met deze configuratie kan de logische app toegang krijgen tot het opslagaccount via privé-eindpunten.

Veelvoorkomende fouten oplossen

De volgende fouten treden meestal op bij een privéopslagaccount achter een firewall en geven aan dat de logische app geen toegang heeft tot de opslagaccountservices.

Probleem Error
De toegang tot het host.json bestand is geweigerd "System.Private.CoreLib: Access to the path 'C:\\home\\site\\wwwroot\\host.json' is denied."
Kan werkstromen niet laden in de resource van de logische app "Encountered an error (ServiceUnavailable) from host runtime."

Omdat de logische app niet wordt uitgevoerd wanneer deze fouten optreden, kunt u de Kudu-consolefoutopsporingsservice op het Azure-platform niet gebruiken om deze fouten op te lossen. U kunt echter de volgende methoden gebruiken:

  • Maak een virtuele Azure-machine (VM) in een ander subnet binnen hetzelfde virtuele netwerk dat is geïntegreerd met uw logische app. Probeer verbinding te maken vanaf de VIRTUELE machine met het opslagaccount.

  • Controleer de toegang tot de opslagaccountservices met behulp van het hulpprogramma Storage Explorer.

    Als u verbindingsproblemen ondervindt met dit hulpprogramma, gaat u verder met de volgende stappen:

    1. Voer vanaf de opdrachtprompt uit nslookup om te controleren of de opslagservices worden omgezet in de privé-IP-adressen voor het virtuele netwerk:

      C:\>nslookup {storage-account-host-name} [optional-DNS-server]

    2. Controleer alle opslagservices:

      C:\nslookup {storage-account-host-name}.blob.core.windows.net

      C:\nslookup {storage-account-host-name}.file.core.windows.net

      C:\nslookup {storage-account-host-name}.queue.core.windows.net

      C:\nslookup {storage-account-host-name}.table.core.windows.net

    3. Als deze DNS-query's worden omgezet, voert psping u het verkeer uit of tcpping controleert u het verkeer naar het opslagaccount via poort 443:

      C:\psping {storage-account-host-name} {port} [optional-DNS-server]

    4. Controleer alle opslagservices:

      C:\psping {storage-account-host-name}.blob.core.windows.net:443

      C:\psping {storage-account-host-name}.queue.core.windows.net:443

      C:\psping {storage-account-host-name}.table.core.windows.net:443

      C:\psping {storage-account-host-name}.file.core.windows.net:443

    5. Als de query's van de VM worden omgezet, gaat u verder met de volgende stappen:

      1. Zoek in de VIRTUELE machine de DNS-server die wordt gebruikt voor omzetting.

      2. Zoek en stel in uw logische app de WEBSITE_DNS_SERVER app-instelling in op dezelfde DNS-serverwaarde die u in de vorige stap hebt gevonden.

      3. Controleer of de integratie van het virtuele netwerk juist is ingesteld met het juiste virtuele netwerk en subnet in uw logische app.

Volgende stappen