Sdílet prostřednictvím


Ochrana rozhraní API pomocí služby Application Gateway a SLUŽBY API Management

Azure API Management
Azure Application Gateway

Organizace stále častěji přijímají přístupy k návrhu rozhraní API-first a čelí rostoucí hrozbám pro webové aplikace. Potřebujete komplexní strategii zabezpečení pro ochranu rozhraní API, zejména při zveřejnění rozhraní API využívajících technologii AI a implementaci principů architektury nulové důvěryhodnosti. Model směrování brány poskytuje jeden přístup k zabezpečení rozhraní API tím, že chrání síťový provoz. Brána omezuje umístění zdroje provozu a kvalitu provozu a zároveň podporuje flexibilní pravidla směrování. Tento článek popisuje, jak používat Aplikace Azure lication Gateway a Azure API Management k ochraně přístupu k rozhraní API.

Architecture

Tento článek se nezabývá základními platformami aplikace, jako jsou App Service Environment, Azure SQL Managed Instance a Azure Kubernetes Service (AKS). Tyto části diagramu ukazují, co můžete implementovat jako širší řešení. Tento článek se konkrétně věnuje stínovaným oblastem, službě API Management a službě Application Gateway.

Diagram znázorňující, jak Application Gateway a API Management chrání rozhraní API

Stáhněte si soubor aplikace Visio s touto architekturou.

Workflow

  1. Application Gateway přijímá požadavky HTTPS, které umožňuje skupina zabezpečení sítě (NSG) podsítě.

  2. Firewall webových aplikací (WAF) ve službě Application Gateway kontroluje požadavek na pravidla WAF, včetně vlastních pravidel geomatch. Pokud je žádost platná, žádost pokračuje.

  3. Application Gateway nastaví mechanismus proxy adres URL, který odešle požadavek do správného back-endového fondu. Chování směrování závisí na formátu adresy URL volání rozhraní API:

    • Adresy URL formátované tak, aby api.<some-domain>/external/* se dostaly k back-endu, aby mohly komunikovat s požadovanými rozhraními API.

    • Volání formátovaná jako api.<some-domain>/* přechod na koncový konec označovaný jako fond jímky, což je back-endový fond bez cíle.

    • Pravidlo směrování na úrovni služby Application Gateway přesměruje uživatele portal.<some-domain>/* na portál pro vývojáře. Vývojáři můžou spravovat rozhraní API a jejich konfigurace z interních i externích prostředí. Případně můžete úplně zablokovat portál pro vývojáře.

  4. Application Gateway přijímá interní volání a proxy servery z prostředků ve stejné virtuální síti Azure v části api.<some-domain>/internal/*.

  5. Na úrovni služby API Management rozhraní API přijímají volání podle následujících vzorů:

    • api.<some-domain>/external/*
    • api.<some-domain>/internal/*

    V tomto scénáři služba API Management používá veřejné a privátní IP adresy. Veřejné IP adresy podporují operace správy na portu 3443 pro rovinu správy a pro provoz rozhraní API za běhu v konfiguracích externí virtuální sítě. Když služba API Management odešle požadavek na veřejný back-end směřující k internetu, zobrazí jako původ požadavku veřejnou IP adresu. Další informace najdete v tématu IP adresy služby API Management ve virtuální síti.

Components

  • Azure Virtual Network umožňuje mnoha typům prostředků Azure komunikovat soukromě mezi sebou, internetem a místními sítěmi. V této architektuře služba Application Gateway tuneluje veřejný internetový provoz do této privátní sítě.

  • Application Gateway je nástroj pro vyrovnávání zatížení webového provozu, který spravuje provoz do webových aplikací. Tento typ směrování se označuje jako vyrovnávání zatížení aplikační vrstvy (OSI Layer 7). V této architektuře brána poskytuje směrování a hostování WAF pro ochranu před běžnými webovými vektory útoku.

  • API Management je hybridní multicloudová platforma pro správu pro rozhraní API ve všech prostředích. Služba API Management vytváří konzistentní moderní brány rozhraní API pro stávající back-endové služby. V této architektuře funguje služba API Management v plně privátním režimu, aby se z kódu rozhraní API a hostitelů přesměrovály obavy, které se týkají křížového snižování.

Alternatives

K poskytování podobné úrovně brány firewall a ochrany WAF můžete použít jiné služby:

  • Azure Front Door poskytuje integrovanou ochranu před útoky DDoS (Distributed Denial-of-Service) a globální vyrovnávání zatížení.

  • Azure Firewall poskytuje ochranu na úrovni sítě a centralizovanou správu zásad zabezpečení.

  • Partnerské řešení, jako je Barracuda WAF nebo jiná řešení WAF, jsou k dispozici na Azure Marketplace.

Recommendations

Tato architektura se zaměřuje na implementaci celého řešení a testování přístupu rozhraní API z virtuální sítě API Management i mimo tuto virtuální síť. Další informace o procesu integrace naleznete v tématu Integrace služby API Management do interní virtuální sítě pomocí služby Application Gateway.

Pokud chcete komunikovat s privátními prostředky v back-endu, umístěte službu Application Gateway a API Management do stejné virtuální sítě jako prostředky nebo v partnerské virtuální síti.

  • Privátní interní model nasazení umožňuje službě API Management připojit se k existující virtuální síti, což umožňuje přístup z kontextu této sítě. Pokud chcete tuto funkci povolit, nasaďte úrovně Developer nebo Premium API Management pro injektáž klasických virtuálních sítí. Pro novější možnosti virtuální sítě použijte úrovně Standard v2 nebo Premium v2 s možnostmi integrace virtuální sítě nebo injektáže.

  • Pokud klienti pracují v jiném předplatném nebo jsou spravováni s jiným adresářem Microsoft Entra ID, použijte Azure Private Link pro Application Gateway k poskytování privátního připojení ke službě Application Gateway z klientských virtuálních sítí napříč předplatnými a oblastmi.

  • Správa certifikátů služby Application Gateway ve službě Azure Key Vault

  • K přizpůsobení interakcí se službami můžete použít položky CNAME (Canonical Name).

Considerations

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které můžete použít ke zlepšení kvality úlohy. Další informace najdete v tématu Well-Architected Framework.

Reliability

Spolehlivost pomáhá zajistit, aby vaše aplikace splňovala závazky, které jste pro své zákazníky udělali. Další informace naleznete v tématu Kontrolní seznam pro kontrolu spolehlivosti.

Application Gateway se vždy nasazuje v konfiguraci s vysokou dostupností bez ohledu na počet instancí. Pokud chcete snížit dopad selhání zóny, můžete službu Application Gateway nakonfigurovat tak, aby přesahuje více zón dostupnosti. Další informace najdete v tématu Automatické škálování a vysoká dostupnost.

Povolte zónovou redundanci pro komponenty služby API Management, abyste zajistili odolnost a vysokou dostupnost. Redundance zón replikuje bránu služby API Management a řídicí rovinu napříč datovými centry v fyzicky oddělených zónách. Tato konfigurace je odolná vůči selhání zóny. K podpoře zón dostupnosti musíte použít úroveň API Management Premium.

API Management také podporuje nasazení ve více oblastech, což může zlepšit dostupnost v případě, že jedna oblast přejde do režimu offline. Další informace najdete v tématu Podpora více oblastí. V této topologii nasaďte jednu aplikační bránu pro každou oblast, protože Application Gateway je regionální služba.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace naleznete v tématu Kontrolní seznam pro kontrolu návrhu prozabezpečení .

Další informace o zabezpečení služby Application Gateway najdete v tématu Standardní hodnoty zabezpečení služby Application Gateway v Azure.

Další informace o zabezpečení služby API Management najdete v tématu Standardní hodnoty zabezpečení azure pro službu API Management.

Vždy implementujte následující bezpečnostní opatření:

Optimalizace nákladů

Optimalizace nákladů se zaměřuje na způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace naleznete v tématu Kontrolní seznam pro kontrolu návrhu proOptimalizace nákladů .

Náklady na tuto architekturu závisí na několika aspektech konfigurace:

  • Úrovně služby: Zvažte úrovně Standard v2 a Premium v2 pro API Management, abyste zlepšili nákladovou efektivitu a výkon.

  • Škálovatelnost: Služby dynamicky přidělují počet instancí pro podporu dané poptávky.

  • Doba trvání modulu runtime: Náklady se liší v závislosti na tom, jestli architektura běží nepřetržitě, nebo jen několik hodin každý měsíc.

  • Přenos dat: U nasazení ve více oblastech se účtují náklady na přenos mezi oblastmi.

  • Zpracování WAF: Náklady závisí na počtu vyhodnocených požadavků a pravidel.

Zvažte následující strategie optimalizace nákladů:

Po posouzení těchto aspektů použijte cenovou kalkulačku Azure k odhadu cen.

Efektivita provozu

Efektivita provozu se zabývá provozními procesy, které nasazují aplikaci a udržují ji spuštěnou v produkčním prostředí. Další informace najdete v kontrolním seznamu pro kontrolu návrhu pro efektivitu provozu.

Implementace komplexního monitorování a pozorovatelnosti:

Efektivita výkonu

Efektivita výkonu odkazuje na schopnost vaší úlohy efektivně škálovat tak, aby splňovala požadavky uživatelů. Další informace naleznete v tématu Kontrola návrhu kontrolní seznam pro zvýšení efektivity výkonu.

Application Gateway slouží jako vstupní bod pro tuto architekturu a funkce Firewallu webových aplikací Azure vyžaduje výpočetní výkon pro každou analýzu požadavků. Pokud chcete službě Application Gateway povolit rozšíření výpočetní kapacity na vyžádání, povolte automatické škálování. Další informace najdete v tématu Automatické škálování a redundance zón ve službě Application Gateway. Postupujte podle doporučení dokumentace k produktu pro konfiguraci infrastruktury služby Application Gateway, včetně správné velikosti podsítě. Tento přístup zajišťuje, že podsíť je dostatečně velká, aby podporovala úplné škálování na více instancí.

Zvažte následující optimalizace výkonu služby API Management:

Další kroky

Pokud chcete navrhnout rozhraní API, postupujte podle dobrých pokynů pro návrh webového rozhraní API . K implementaci rozhraní API použijte vhodné postupy implementace webového rozhraní API .