Zabezpečení provozu mezi aplikacemi logiky Standard a virtuálními sítěmi Azure pomocí privátních koncových bodů

Platí pro: Azure Logic Apps (Standard)

Pokud chcete bezpečně a soukromě komunikovat mezi pracovním postupem v aplikaci logiky Standard a virtuální sítí Azure, můžete nastavit privátní koncové body pro příchozí provoz a použít integraci virtuální sítě pro odchozí provoz.

Privátní koncový bod je síťové rozhraní, které vás soukromě a bezpečně připojí ke službám využívajícím Azure Private Link. Může to být služba Azure, jako je Azure Logic Apps, Azure Storage, Azure Cosmos DB, SQL nebo vlastní služba privátního propojení. Privátní koncový bod používá privátní IP adresu vaší virtuální sítě a tím vlastně přináší službu do virtuální sítě.

Tento článek ukazuje, jak nastavit přístup prostřednictvím privátních koncových bodů pro příchozí provoz a integraci virtuální sítě pro odchozí provoz.

Další informace najdete v následující dokumentaci:

Požadavky

Potřebujete novou nebo existující virtuální síť Azure, která zahrnuje podsíť bez delegování. Tato podsíť se používá k nasazení a přidělení privátních IP adres z virtuální sítě.

Další informace najdete v následující dokumentaci:

Nastavení příchozího provozu prostřednictvím privátních koncových bodů

Pokud chcete zabezpečit příchozí provoz do pracovního postupu, proveďte tyto základní kroky:

  1. Spusťte pracovní postup pomocí integrované aktivační události, která může přijímat a zpracovávat příchozí požadavky, jako je trigger Požadavku nebo trigger HTTP + webhook. Tento trigger nastaví pracovní postup s volatelným koncovým bodem.

  2. Přidejte privátní koncový bod pro prostředek aplikace logiky do virtuální sítě.

  3. Proveďte testovací volání a zkontrolujte přístup ke koncovému bodu. Pokud chcete po nastavení tohoto koncového bodu volat pracovní postup aplikace logiky, musíte být připojení k virtuální síti.

Důležité informace o příchozím provozu prostřednictvím privátních koncových bodů

  • Pokud k němu přistupujete mimo virtuální síť, nemá zobrazení monitorování přístup ke vstupům a výstupům z triggerů a akcí.

  • Triggery webhooku spravovaného rozhraní API (triggery nabízených oznámení ) a akce nebudou fungovat, protože běží ve veřejném cloudu a nemůžou volat do vaší privátní sítě. K přijímání volání vyžadují veřejný koncový bod. Mezi takové triggery patří například trigger Dataverse a event grid.

  • Pokud použijete trigger Office 365 Outlooku, pracovní postup se aktivuje jenom po hodinách.

  • Nasazení z nástroje Visual Studio Code nebo Azure CLI funguje pouze ve virtuální síti. K propojení aplikace logiky s úložištěm GitHub můžete použít Deployment Center. Pak můžete použít infrastrukturu Azure k sestavení a nasazení kódu.

    Aby integrace GitHubu WEBSITE_RUN_FROM_PACKAGE fungovala, odeberte nastavení z aplikace logiky nebo nastavte hodnotu na 0.

  • Povolení Private Link nemá vliv na odchozí provoz, který stále prochází infrastrukturou App Service.

Požadavky na příchozí provoz prostřednictvím privátních koncových bodů

Spolu s nastavením virtuální sítě v požadavcích nejvyšší úrovně musíte mít nový nebo existující pracovní postup aplikace logiky Standard, který začíná integrovaným triggerem, který může přijímat požadavky.

Trigger požadavku například vytvoří ve vašem pracovním postupu koncový bod, který může přijímat a zpracovávat příchozí požadavky od jiných volajících, včetně pracovních postupů. Tento koncový bod poskytuje adresu URL, kterou můžete použít k volání a aktivaci pracovního postupu. V tomto příkladu postup pokračuje triggerem Požadavek.

Další informace najdete v tématu Příjem příchozích požadavků HTTP a odpovídání na ně pomocí Azure Logic Apps.

Vytvoření pracovního postupu

  1. Pokud jste to ještě neudělali, vytvořte aplikaci logiky založenou na jednom tenantovi a prázdný pracovní postup.

  2. Po otevření návrháře přidejte trigger Požadavek jako první krok v pracovním postupu.

  3. V závislosti na požadavcích vašeho scénáře přidejte další akce, které chcete v pracovním postupu spustit.

  4. Až budete hotovi, pracovní postup uložte.

Další informace najdete v tématu Vytváření pracovních postupů aplikací logiky pro jednoho tenanta v Azure Logic Apps.

Zkopírujte adresu URL koncového bodu.

  1. V nabídce pracovního postupu vyberte Přehled.

  2. Na stránce Přehled zkopírujte a uložte adresu URL pracovního postupu pro pozdější použití.

    K aktivaci pracovního postupu zavoláte nebo odešlete požadavek na tuto adresu URL.

  3. Ujistěte se, že adresa URL funguje voláním nebo odesláním požadavku na adresu URL. K odeslání požadavku můžete použít jakýkoli nástroj, například Postman.

Nastavení připojení privátního koncového bodu

  1. V nabídce aplikace logiky v části Nastavení vyberte Sítě.

  2. Na stránce Sítě na kartě Příchozí provoz vyberte Privátní koncové body.

  3. U připojení privátního koncového bodu vyberte Přidat.

  4. V podokně Přidat privátní koncový bod , které se otevře, zadejte požadované informace o koncovém bodu.

    Další informace najdete v tématu Vlastnosti privátního koncového bodu.

  5. Jakmile Azure úspěšně zřídí privátní koncový bod, zkuste znovu zavolat adresu URL pracovního postupu.

    Tentokrát se zobrazí očekávaná 403 Forbidden chyba, což znamená, že privátní koncový bod je nastavený a funguje správně.

  6. Abyste se ujistili, že připojení funguje správně, vytvořte virtuální počítač ve stejné virtuální síti, která obsahuje privátní koncový bod, a zkuste zavolat pracovní postup aplikace logiky.

Nastavení odchozího provozu s využitím integrace virtuální sítě

Pokud chcete zabezpečit odchozí provoz z aplikace logiky, můžete aplikaci logiky integrovat s virtuální sítí. Nejprve vytvořte a otestujte ukázkový pracovní postup. Pak můžete nastavit integraci virtuální sítě.

Důležité informace o odchozím provozu prostřednictvím integrace virtuální sítě

  • Nastavení integrace virtuální sítě má vliv pouze na odchozí provoz. Pokud chcete zabezpečit příchozí provoz, který dál používá App Service sdílený koncový bod, přečtěte si téma Nastavení příchozího provozu prostřednictvím privátních koncových bodů.

  • Po přiřazení nemůžete změnit velikost podsítě, proto použijte podsíť, která je dostatečně velká, aby vyhovovala škálování, kterého může vaše aplikace dosáhnout. Pokud se chcete vyhnout problémům s kapacitou podsítě, použijte /26 podsíť s 64 adresami. Pokud vytvoříte podsíť pro integraci virtuální sítě s Azure Portal, musíte jako minimální velikost podsítě použít /27 .

  • Aby modul runtime Azure Logic Apps fungoval, musíte mít nepřerušované připojení k back-endovému úložišti. Pokud je back-endové úložiště přístupné virtuální síti prostřednictvím privátního koncového bodu, ujistěte se, že jsou otevřené následující porty:

    Zdrojový port Cílový port Zdroj Cíl Protokol Účel
    * 443 Podsíť integrovaná s aplikací logiky Standard Účet úložiště TCP Účet úložiště
    * 445 Podsíť integrovaná s aplikací logiky Standard Účet úložiště TCP Sdílená složka protokolu SMB (Server Message Block)
  • Aby spravované konektory hostované v Azure fungovaly, musíte mít nepřerušované připojení ke službě spravovaného rozhraní API. V případě integrace virtuální sítě se ujistěte, že tato připojení neblokuje žádná brána firewall ani zásady zabezpečení sítě. Pokud vaše virtuální síť používá skupinu zabezpečení sítě (NSG), směrovací tabulku definovanou uživatelem (UDR) nebo bránu firewall, ujistěte se, že virtuální síť umožňuje odchozí připojení ke všem IP adresám spravovaných konektorů v odpovídající oblasti. Jinak nebudou fungovat konektory spravované Azure.

Další informace najdete v následující dokumentaci:

Vytvoření a testování pracovního postupu

  1. Pokud jste to ještě neudělali, vytvořte v Azure Portal aplikaci logiky s jedním tenantem a prázdný pracovní postup.

  2. Po otevření návrháře přidejte trigger Request jako první krok pracovního postupu.

  3. Přidejte akci HTTP, která zavolá interní službu, která není dostupná přes internet a spustí se s privátní IP adresou, například 10.0.1.3.

  4. Až budete hotovi, pracovní postup uložte.

  5. V návrháři ručně spusťte pracovní postup.

    Akce HTTP selže, což je záměrně a očekáváno, protože pracovní postup běží v cloudu a nemá přístup k interní službě.

Nastavení integrace virtuální sítě

  1. V Azure Portal v nabídce prostředků aplikace logiky v části Nastavení vyberte Sítě.

  2. V podokně Sítě na kartě Odchozí provoz vyberte Integrace virtuální sítě.

  3. V podokně Integrace virtuální sítě vyberte Přidat virtuální síť.

  4. V podokně Přidat integraci virtuální sítě vyberte předplatné a virtuální síť, která se připojuje k interní službě.

    Po přidání integrace virtuální sítě je v podokně Integrace virtuální sítě ve výchozím nastavení povolené nastavení Směrovat vše . Toto nastavení směruje veškerý odchozí provoz přes virtuální síť. Pokud je toto nastavení povolené, WEBSITE_VNET_ROUTE_ALL nastavení aplikace se ignoruje.

  5. Pokud s virtuální sítí používáte vlastní server dns (Domain Name Server), nastavte nastavení aplikace prostředku WEBSITE_DNS_SERVER logiky na IP adresu vašeho DNS. Pokud máte sekundární DNS, přidejte další nastavení aplikace s názvem WEBSITE_DNS_ALT_SERVERa nastavte hodnotu také na IP adresu vašeho DNS.

  6. Jakmile Azure úspěšně zřídí integraci virtuální sítě, zkuste pracovní postup spustit znovu.

    Akce HTTP se teď úspěšně spustí.

Další kroky