Nasazení instance služby Azure API Management do virtuální sítě – interní režim

PLATÍ PRO: Vývojář | Prémie

Azure API Management je možné nasadit (vloženého) do virtuální sítě Azure pro přístup k back-endovým službám v síti. Informace o možnostech připojení k virtuální síti, požadavcích a důležitých informacích najdete tady:

Tento článek vysvětluje, jak nastavit připojení virtuální sítě pro instanci služby API Management v interním režimu. V tomto režimu můžete přistupovat pouze k následujícím koncovým bodům služby API Management ve virtuální síti, jejichž přístup řídíte.

  • Brána rozhraní API
  • Portál pro vývojáře
  • Přímá správa
  • Git

Poznámka:

  • Ve veřejném DNS nejsou zaregistrované žádné koncové body služby API Management. Koncové body zůstanou nedostupné, dokud nenakonfigurujete DNS pro virtuální síť.
  • Pokud chcete v tomto režimu používat bránu v místním prostředí, povolte také privátní připojení ke koncovému bodu konfigurace brány v místním prostředí.

Použití služby API Management v interním režimu k:

  • Zajistěte, aby rozhraní API hostovaná ve vašem privátním datacentru byla zabezpečená přístupná třetími stranami mimo ni pomocí připojení Vpn Azure nebo Azure ExpressRoute.
  • Povolte hybridní cloudové scénáře zveřejněním cloudových rozhraní API a místních rozhraní API prostřednictvím společné brány.
  • Spravujte svá rozhraní API hostovaná v několika geografických umístěních pomocí jednoho koncového bodu brány.

Připojení k interní virtuální síti

Konfigurace specifické pro externí režim, kdy jsou koncové body služby API Management přístupné z veřejného internetu a back-endové služby se nacházejí v síti, najdete v tématu Nasazení instance služby Azure API Management do virtuální sítě – externí režim.

Poznámka:

Při práci s Azure doporučujeme používat modul Azure Az PowerShellu. Začněte tím, že si projdete téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.

Požadavky

Než začnete, projděte si požadavky na síťové prostředky pro injektáž služby API Management do virtuální sítě.

Některé požadavky se liší v závislosti na verzi (stv2 nebo stv1) výpočetní platformy hostující instanci služby API Management.

Tip

Pokud k vytvoření nebo aktualizaci síťového připojení existující instance služby API Management používáte portál, je instance hostovaná na stv2 výpočetní platformě.

  • Instance služby API Management. Další informace najdete v tématu Vytvoření instance služby Azure API Management.
  • Virtuální síť a podsíť ve stejné oblasti a předplatném jako vaše instance služby API Management.

    • Podsíť použitá pro připojení k instanci služby API Management může obsahovat jiné typy prostředků Azure.
    • Podsíť by neměla mít povolené žádné delegování. Podsíť Delegovat na nastavení služby pro podsíť by měla být nastavena na Hodnotu Žádné.
  • Skupina zabezpečení sítě připojená k podsíti výše. Skupina zabezpečení sítě (NSG) je nutná k explicitnímu povolení příchozího připojení, protože nástroj pro vyrovnávání zatížení používaný interně službou API Management je ve výchozím nastavení zabezpečený a odmítne veškerý příchozí provoz. Konkrétní konfiguraci najdete v části Konfigurace pravidel NSG dále v tomto článku.

  • V určitých scénářích povolte koncové body služby v podsíti závislým službám, jako je Azure Storage nebo Azure SQL. Další informace najdete v tématu Vynucení tunelového provozu do místní brány firewall pomocí ExpressRoute nebo síťového virtuálního zařízení, dále v tomto článku.

  • (Volitelné) Veřejná IPv4 adresa standardní skladové položky.

    Důležité

    • Od května 2024 už prostředek veřejné IP adresy není potřeba při nasazování (vkládání) instance služby API Management ve virtuální síti v interním režimu nebo migraci interní konfigurace virtuální sítě do nové podsítě. V externím režimu virtuální sítě je zadání veřejné IP adresy volitelné. Pokud ji nezadáte, veřejná IP adresa spravovaná v Azure se automaticky nakonfiguruje a použije pro provoz rozhraní API modulu runtime. Veřejnou IP adresu zadejte pouze v případě, že chcete vlastnit a řídit veřejnou IP adresu použitou pro příchozí nebo odchozí komunikaci s internetem.
    • V případě potřeby musí být IP adresa ve stejné oblasti a předplatném jako instance služby API Management a virtuální síť.

    • Při vytváření prostředku veřejné IP adresy se ujistěte, že k němu přiřadíte popisek názvu DNS. Obecně byste měli použít stejný název DNS jako instance služby API Management. Pokud ji změníte, nasaďte instanci znovu, aby se použil nový popisek DNS.

    • Pro zajištění nejlepšího výkonu sítě se doporučuje použít výchozí předvolbu směrování: síť Microsoft.

    • Při vytváření veřejné IP adresy v oblasti, ve které plánujete povolit redundanci zón pro instanci služby API Management, nakonfigurujte zónově redundantní nastavení.

    • Hodnota IP adresy je přiřazena jako virtuální veřejná IPv4 adresa instance služby API Management v dané oblasti.

  • Pro nasazení služby API Management pro více oblastí nakonfigurujte prostředky virtuální sítě samostatně pro každé umístění.

Povolení připojení virtuální sítě

Povolení připojení virtuální sítě pomocí webu Azure Portal (stv2 platforma)

  1. Přejděte na web Azure Portal a vyhledejte instanci služby API Management. Vyhledejte a vyberte služby API Management.

  2. Zvolte instanci služby API Management.

  3. Vyberte Síťová>virtuální síť.

  4. Vyberte typ interního přístupu.

  5. V seznamu umístění (oblastí), ve kterých je vaše služba API Management zřízená:

    1. Zvolte Umístění.
    2. Vyberte virtuální síť a podsíť.
      • Seznam virtuálních sítí se naplní virtuálními sítěmi Resource Manageru dostupnými ve vašich předplatných Azure a nastaví se v oblasti, kterou konfigurujete.
  6. Vyberte Použít. Stránka virtuální sítě vaší instance služby API Management se aktualizuje o nové možnosti virtuální sítě a podsítě. Nastavení interní virtuální sítě na webu Azure Portal

  7. Pokračujte v konfiguraci nastavení virtuální sítě pro zbývající umístění vaší instance služby API Management.

  8. V horním navigačním panelu vyberte Uložit.

    Aktualizace instance služby API Management může trvat 15 až 45 minut. Úroveň Developer má během procesu výpadek. U skladových položek Basic a vyšších během tohoto procesu k výpadku nedojde.

Po úspěšném nasazení by se v okně Přehled měla zobrazit privátní virtuální IP adresa služby API Management a veřejná virtuální IP adresa. Další informace o IP adresách najdete v části Směrování v tomto článku.

Veřejná a privátní IP adresa adresovaná na webu Azure Portal

Poznámka:

Vzhledem k tomu, že adresa URL brány není zaregistrovaná ve veřejném DNS, testovací konzola dostupná na webu Azure Portal nebude fungovat pro interní nasazenou službu virtuální sítě. Místo toho použijte testovací konzolu poskytnutou na portálu pro vývojáře.

Povolení připojení pomocí šablony Resource Manageru (stv2 platforma)

  • Šablona Azure Resource Manageru (rozhraní API verze 2021-08-01)

    Tlačítko pro nasazení šablony Resource Manageru do Azure

Povolení připojení pomocí rutin Azure PowerShellu (stv1 platforma)

Vytvořte nebo aktualizujte instanci služby API Management ve virtuální síti.

Konfigurace pravidel skupin zabezpečení sítě

Nakonfigurujte vlastní pravidla sítě v podsíti služby API Management tak, aby filtrovali provoz do a z vaší instance služby API Management. Pro zajištění správného provozu a přístupu k vaší instanci doporučujeme následující minimální pravidla NSG. Pečlivě zkontrolujte prostředí a zjistěte další pravidla, která by mohla být potřeba.

Důležité

V závislosti na použití ukládání do mezipaměti a dalších funkcí možná budete muset nakonfigurovat další pravidla NSG nad rámec minimálních pravidel v následující tabulce. Podrobné nastavení najdete v referenčních informacích ke konfiguraci virtuální sítě.

  • Ve většině scénářů použijte k určení zdrojů a cílů sítě značky služeb místo IP adres služeb.
  • Nastavte prioritu těchto pravidel vyšší než výchozí pravidla.
Zdrojové / cílové porty Směr Přenosový protokol Značky služeb
Zdroj / cíl
Účel Typ virtuální sítě
* / [80], 443 Příchozí TCP Internet / VirtualNetwork Komunikace klientů se službou API Management Pouze externí
* / 3443 Příchozí TCP ApiManagement / VirtualNetwork Koncový bod správy pro Azure Portal a PowerShell Externí a interní
* / 6390 Příchozí TCP AzureLoadBalancer / VirtualNetwork Azure Infrastructure Load Balancer Externí a interní
* / 443 Příchozí TCP AzureTrafficManager / VirtualNetwork Směrování Azure Traffic Manageru pro nasazení ve více oblastech Pouze externí
* / 443 Odchozí TCP VirtualNetwork / Storage Závislost na Azure Storage pro základní funkce služby Externí a interní
* / 1433 Odchozí TCP VirtualNetwork / SQL Přístup ke koncovým bodům Azure SQL pro základní funkce služby Externí a interní
* / 443 Odchozí TCP VirtualNetwork / AzureKeyVault Přístup ke službě Azure Key Vault pro základní funkce služby Externí a interní
* / 1886, 443 Odchozí TCP VirtualNetwork / AzureMonitor Publikování diagnostických protokolů a metrik, stavu prostředků a Application Insights Externí a interní

Konfigurace DNS

Pokud chcete povolit příchozí přístup ke koncovým bodům služby API Management v interním režimu virtuální sítě, musíte spravovat vlastní server DNS.

Naše doporučení:

  1. Nakonfigurujte privátní zónu Azure DNS.
  2. Propojte privátní zónu Azure DNS s virtuální sítí, do které jste nasadili službu API Management.

Zjistěte, jak nastavit privátní zónu v Azure DNS.

Poznámka:

Služba API Management neodslouchá požadavkům na jeho IP adresy. Reaguje pouze na požadavky na název hostitele nakonfigurovaný v jeho koncových bodech. Mezi tyto koncové body patří:

  • Brána rozhraní API
  • Azure Portal
  • Portál pro vývojáře
  • Koncový bod přímé správy
  • Git

Přístup k výchozím názvům hostitelů

Při vytváření služby API Management (contosointernalvnetnapříklad) se ve výchozím nastavení konfigurují následující koncové body:

Koncový bod Konfigurace koncového bodu
Brána rozhraní API contosointernalvnet.azure-api.net
Portál pro vývojáře contosointernalvnet.portal.azure-api.net
Nový portál pro vývojáře contosointernalvnet.developer.azure-api.net
Koncový bod přímé správy contosointernalvnet.management.azure-api.net
Git contosointernalvnet.scm.azure-api.net

Přístup k vlastním názvům domén

Pokud nechcete získat přístup ke službě API Management s výchozími názvy hostitelů, nastavte vlastní názvy domén pro všechny koncové body, jak je znázorněno na následujícím obrázku:

Nastavení vlastního názvu domény

Konfigurace záznamů DNS

Vytvořte na serveru DNS záznamy pro přístup ke koncovým bodům přístupným z vaší virtuální sítě. Namapujte záznamy koncových bodů na privátní virtuální IP adresu vaší služby.

Pro účely testování můžete aktualizovat soubor hostitelů na virtuálním počítači v podsíti připojené k virtuální síti, ve které je služba API Management nasazená. Za předpokladu, že privátní virtuální IP adresa pro vaši službu je 10.1.0.5, můžete soubor hostitelů mapovat následujícím způsobem. Soubor mapování hostitelů je v %SystemDrive%\drivers\etc\hosts systému (Windows) nebo /etc/hosts (Linux, macOS).

Interní virtuální IP adresa Konfigurace koncového bodu
10.1.0.5 contosointernalvnet.azure-api.net
10.1.0.5 contosointernalvnet.portal.azure-api.net
10.1.0.5 contosointernalvnet.developer.azure-api.net
10.1.0.5 contosointernalvnet.management.azure-api.net
10.1.0.5 contosointernalvnet.scm.azure-api.net

Pak můžete přistupovat ke všem koncovým bodům služby API Management z virtuálního počítače, který jste vytvořili.

Směrování

Následující virtuální IP adresy jsou nakonfigurované pro instanci služby API Management v interní virtuální síti.

Virtuální IP adresa Popis
Privátní virtuální IP adresa IP adresa s vyrovnáváním zatížení z rozsahu podsítí (DIP) instance služby API, přes kterou máte přístup k bráně rozhraní API, portálu pro vývojáře, správě a koncovým bodům Gitu.

Zaregistrujte tuto adresu u serverů DNS používaných virtuální sítí.
Veřejná virtuální IP adresa Používá se pouze pro provoz řídicí roviny do koncového bodu správy přes port 3443. Je možné ji uzamknout na značku služby ApiManagement .

Veřejné a privátní IP adresy s vyrovnáváním zatížení najdete v okně Přehled na webu Azure Portal.

Další informace a důležité informace najdete v tématu IP adresy služby Azure API Management.

VIP a IP adresy

Dynamické IP adresy (DIP) se přiřadí každému podkladovému virtuálnímu počítači ve službě a použijí se pro přístup ke koncovým bodům a prostředkům ve virtuální síti a v partnerských virtuálních sítích. Veřejná VIRTUÁLNÍ IP adresa služby API Management se použije pro přístup k veřejným prostředkům.

Pokud omezení PROTOKOLU IP uvádí zabezpečené prostředky v rámci virtuální sítě nebo partnerských virtuálních sítí, doporučujeme zadat celý rozsah podsítí, ve kterém je služba API Management nasazená, aby se udělil nebo omezil přístup ze služby.

Přečtěte si další informace o doporučené velikosti podsítě.

Příklad

Pokud nasadíte 1 jednotku kapacity služby API Management na úrovni Premium v interní virtuální síti, použijí se 3 IP adresy: 1 pro privátní virtuální IP adresu a jednu pro ip adresy pro dva virtuální počítače. Pokud škálujete kapacitu na 4 jednotky, budou se další IP adresy spotřebovávat pro další IP adresy z podsítě.

Pokud cílový koncový bod povolil pouze pevnou sadu zprostředkovatelů dostupnosti, selhání připojení způsobí, že v budoucnu přidáte nové jednotky. Z tohoto důvodu a vzhledem k tomu, že podsíť je plně ve vašem řízení, doporučujeme povolit výpis celé podsítě v back-endu.

Vynucení tunelového provozu do místní brány firewall pomocí ExpressRoute nebo síťového virtuálního zařízení

Vynucené tunelování umožňuje přesměrovat nebo "vynutit" veškerý internetový provoz z vaší podsítě zpět do místního prostředí pro účely kontroly a auditování. Běžně konfigurujete a definujete vlastní výchozí trasu (0.0.0.0/0), která vynutí veškerý provoz z podsítě služby API Management tak, aby procházel přes místní bránu firewall nebo do síťového virtuálního zařízení. Tento tok provozu přeruší připojení ke službě API Management, protože odchozí provoz je buď blokovaný místně, nebo překlad adres (NAT) na nerozpoznatelnou sadu adres, které už nefungují s různými koncovými body Azure. Tento problém můžete vyřešit následujícími metodami:

  • Povolte koncové body služby v podsíti, ve které je služba API Management nasazená pro:

    • Azure SQL (vyžaduje se pouze v primární oblasti, pokud je služba API Management nasazená do více oblastí)
    • Azure Storage
    • Azure Event Hubs
    • Azure Key Vault (vyžaduje se při nasazení služby API Management na platformě stv2 )

    Povolením koncových bodů přímo z podsítě služby API Management do těchto služeb můžete použít páteřní síť Microsoft Azure a zajistit optimální směrování provozu služeb. Pokud používáte koncové body služby s vynuceným tunelovým tunelovým propojením služby API Management, provoz pro předchozí služby Azure se nevynutí tunelování. Ostatní přenosy závislostí služby API Management však zůstávají vynucené tunelové propojení. Ujistěte se, že vaše brána firewall nebo virtuální zařízení neblokují tento provoz nebo že služba API Management nemusí správně fungovat.

    Poznámka:

    Důrazně doporučujeme povolit koncové body služeb přímo z podsítě služby API Management do závislých služeb, jako jsou Azure SQL a Azure Storage, které je podporují. Některé organizace ale můžou mít požadavky na vynucení tunelového propojení veškerého provozu z podsítě služby API Management. V takovém případě se ujistěte, že nakonfigurujete bránu firewall nebo virtuální zařízení tak, aby umožňovalo tento provoz. Budete muset povolit úplný rozsah IP adres jednotlivých závislých služeb a zachovat tuto konfiguraci v aktualizovaném stavu při změně infrastruktury Azure. Vaše služba API Management může také zaznamenat latenci nebo neočekávané časové limity kvůli vynucení tunelování tohoto síťového provozu.

  • Veškerý provoz řídicí roviny z internetu do koncového bodu správy vaší služby API Management se směruje přes konkrétní sadu příchozích IP adres hostovaných službou API Management, která zahrnuje značku služby ApiManagement. V případě vynuceného tunelování provozu se odpovědi nebudou symetricky mapovat zpět na tyto příchozí zdrojové IP adresy a dojde ke ztrátě připojení ke koncovému bodu pro správu. Pokud chcete toto omezení překonat, nakonfigurujte trasu definovanou uživatelem pro značku služby ApiManagement s typem dalšího segmentu směrování nastaveným na "Internet" pro směrování zpět do Azure.

    Poznámka:

    Povolení provozu služby API Management pro obejití místní brány firewall nebo síťového virtuálního zařízení se nepovažuje za významné bezpečnostní riziko. Doporučená konfigurace pro vaši podsíť služby API Management umožňuje příchozí provoz správy na portu 3443 pouze ze sady IP adres Azure, které zahrnuje značka služby ApiManagement. Doporučená konfigurace trasy definovaná uživatelem je určená pouze pro návratovou cestu tohoto provozu Azure.

  • (Režim externí virtuální sítě) Provoz roviny dat pro klienty, kteří se pokoušejí připojit k bráně služby API Management a portálu pro vývojáře z internetu, se ve výchozím nastavení zahodí kvůli asymetrickým směrováním zavedeným vynuceným tunelováním. Pro každého klienta, který vyžaduje přístup, nakonfigurujte explicitní trasu definovanou uživatelem s typem dalšího segmentu směrování "Internet" tak, aby obešla bránu firewall nebo zařízení virtuální sítě.

  • V případě jiných vynucených závislostí služby API Management přeložte název hostitele a spojte se s koncovým bodem. Tady jsou některé z nich:

    • Metriky a Monitorování stavu
    • Diagnostika webu Azure Portal
    • Přenos SMTP
    • Portál pro vývojáře CAPTCHA
    • Server Azure KMS

Další informace najdete v tématu Referenční informace o konfiguraci virtuální sítě.

Běžné problémy s konfigurací sítě

Tento oddíl se přesunul. Viz referenční informace o konfiguraci virtuální sítě.

Řešení problému

Neúspěšné počáteční nasazení služby API Management do podsítě

  • Nasaďte virtuální počítač do stejné podsítě.
  • Připojte se k virtuálnímu počítači a ověřte připojení k jednomu z následujících prostředků ve vašem předplatném Azure:
    • Objekt blob služby Azure Storage
    • Azure SQL Database
    • Tabulka služby Azure Storage
    • Azure Key Vault (pro instanci služby API Management hostované na platforměstv2)

Důležité

Po ověření připojení odeberte všechny prostředky v podsíti před nasazením služby API Management do podsítě (vyžaduje se při hostování služby API Management na stv1 platformě).

Ověření stavu sítě

  • Po nasazení služby API Management do podsítě pomocí portálu zkontrolujte připojení vaší instance k závislostem, jako je Azure Storage.

  • Na portálu v nabídce vlevo v části Nasazení a infrastruktura vyberte Stav sítě>.

    Snímek obrazovky s ověřením stavu připojení k síti na portálu

Filtr Popis
Povinní účastníci Vyberte, pokud chcete zkontrolovat požadované připojení služeb Azure ke službě API Management. Selhání značí, že instance nemůže provádět základní operace pro správu rozhraní API.
Volitelné Vyberte, jestli chcete zkontrolovat možnosti připojení k volitelným službám. Selhání značí, že konkrétní funkce nebudou fungovat (například SMTP). Selhání může vést ke snížení využití a monitorování instance služby API Management a poskytnutí potvrzené smlouvy SLA.

Pokud chcete pomoct s řešením potíží s připojením, vyberte:

  • Metriky – kontrola metrik stavu připojení k síti

  • Diagnostika – spuštění ověřovatele virtuální sítě v zadaném časovém období

Pokud chcete vyřešit problémy s připojením, zkontrolujte nastavení konfigurace sítě a opravte požadovaná nastavení sítě.

Přírůstkové aktualizace

Při provádění změn v síti se podívejte na rozhraní NETWORKStatus API a ověřte, že služba API Management neztratila přístup k důležitým prostředkům. Stav připojení by se měl aktualizovat každých 15 minut.

Pokud chcete použít změnu konfigurace sítě na instanci služby API Management pomocí portálu:

  1. V nabídce vlevo pro vaši instanci v části Nasazení a infrastruktura vyberte Síťová>virtuální síť.
  2. Vyberte Použít konfiguraci sítě.

Instance služby API Management hostovaná na stv1 výpočetní platformě při nasazení do podsítě virtuální sítě Resource Manageru rezervuje podsíť vytvořením navigačního propojení prostředků. Pokud podsíť již obsahuje prostředek od jiného poskytovatele, nasazení selže. Podobně když odstraníte službu API Management nebo ji přesunete do jiné podsítě, odebere se navigační odkaz prostředku.

Problémy, ke kterým došlo při opětovném přiřazení instance služby API Management k předchozí podsíti

  • Zámek virtuální sítě – Při přesunu instance služby API Management zpět do původní podsítě nemusí být okamžité opětovné přiřazení možné kvůli uzamčení virtuální sítě, což trvá až jednu hodinu, než se odebere. Pokud má původní podsíť jiné stv1 služby API Management založené na platformě (cloudové služby), odstranění a čekání je nezbytné pro nasazení stv2 služby založené na platformě ve stejné podsíti.
  • Zámek skupiny prostředků – Dalším scénářem, který je potřeba vzít v úvahu, je přítomnost zámku oboru na úrovni skupiny prostředků nebo vyšší, což brání procesu odstranění navigačního odkazu prostředku. Pokud chcete tento problém vyřešit, odeberte zámek oboru a počkejte přibližně 4 až 6 hodin, než služba API Management zruší propojení z původní podsítě před odebráním zámku, což umožní nasazení do požadované podsítě.

Řešení potíží s připojením k Microsoft Graphu z virtuální sítě

Připojení k síti k Microsoft Graphu je potřeba pro funkce, včetně přihlašování uživatelů k portálu pro vývojáře pomocí zprostředkovatele identity Microsoft Entra.

Řešení potíží s připojením k Microsoft Graphu z virtuální sítě:

  • Ujistěte se, že je skupina zabezpečení sítě a další pravidla sítě nakonfigurovaná pro odchozí připojení z vaší instance služby API Management k Microsoft Graphu (pomocí značky služby AzureActiveDirectory ).

  • Zajistěte překlad DNS a přístup k graph.microsoft.com síti z virtuální sítě. Například zřiďte nový virtuální počítač uvnitř virtuální sítě, připojte se k němu a zkuste se k němu připojit GET https://graph.microsoft.com/v1.0/$metadata z prohlížeče nebo pomocí cURL, PowerShellu nebo jiných nástrojů.

Další kroky

Přečtěte si další informace: