Přehled brány v místním prostředí

PLATÍ PRO: Vývojář | Premium

Brána v místním prostředí je volitelná kontejnerizovaná verze výchozí spravované brány, která je součástí každé služby API Management. Je užitečné pro scénáře, jako je umístění bran do stejných prostředí, ve kterých hostujete svá rozhraní API. Pomocí brány v místním prostředí můžete zlepšit tok provozu rozhraní API a řešit požadavky na zabezpečení a dodržování předpisů rozhraní API.

Tento článek vysvětluje, jak funkce brány v místním prostředí služby Azure API Management umožňuje hybridní a multicloudovou správu rozhraní API Management, představuje její architekturu vysoké úrovně a zdůrazňuje její možnosti.

Přehled funkcí v různých nabídkách bran najdete v tématu Brána rozhraní API ve službě API Management.

Hybridní a multicloudová správa rozhraní API

Funkce brány v místním prostředí rozšiřuje podporu správy rozhraní API pro hybridní a multicloudová prostředí a umožňuje organizacím efektivně a bezpečně spravovat rozhraní API hostovaná lokálně i v cloudech z jediné služby správy rozhraní API v Azure.

S bránou v místním prostředí mají zákazníci flexibilitu nasadit kontejnerizovanou verzi komponenty brány API Management do stejných prostředí, kde hostují svá rozhraní API. Všechny brány v místním prostředí se spravují ze služby API Management, se kterou jsou federované, a poskytují tak zákazníkům přehled a jednotné prostředí pro správu napříč všemi interními a externími rozhraními API.

Každá služba API Management se skládá z následujících klíčových komponent:

  • Rovina správy vystavená jako rozhraní API, která slouží ke konfiguraci služby prostřednictvím portálu Azure, PowerShellu a dalších podporovaných mechanismů.
  • Brána (nebo rovina dat), která zodpovídá za proxy požadavky rozhraní API, použití zásad a shromažďování telemetrických dat
  • Portál pro vývojáře používaný vývojáři ke zjišťování, učení a onboardingu pro použití rozhraní API

Ve výchozím nastavení se všechny tyto komponenty nasazují v Azure, což způsobuje, že veškerý provoz rozhraní API (zobrazený jako plná černá šipka na následujícím obrázku) prochází přes Azure bez ohledu na to, kde se hostují back-endy implementované rozhraní API. Provozní jednoduchost tohoto modelu má náklady na vyšší latenci, problémy s dodržováním předpisů a v některých případech další poplatky za přenos dat.

Tok provozu rozhraní API bez bran v místním prostředí

Nasazení místních bran do stejných prostředí, kde jsou hostovány backendové implementace API, umožňuje, aby provoz API proudil přímo k backendovým API, což snižuje latenci, optimalizuje náklady na přenos dat a umožňuje dodržování předpisů při zachování výhod jediného bodu správy, pozorovatelnosti a zjišťování všech API v rámci organizace bez ohledu na to, kde jsou jejich implementace hostovány.

Tok provozu rozhraní API s bránami v místním prostředí

Zabalení

Místní brána je k dispozici jako image kontejneru Dockeru založená na Linuxu z registru artefaktů Microsoftu. Je možné jej nasadit do Dockeru, Kubernetes nebo jiného řešení pro orchestraci kontejnerů, které běží na serverovém clusteru v budově, v cloudové infrastruktuře nebo pro účely vyhodnocení a vývoje na osobním počítači. Bránu v místním prostředí můžete také nasadit jako rozšíření clusteru do clusteru Kubernetes s podporou Azure Arc.

Image kontejneru

Poskytujeme celou řadu imagí kontejnerů pro brány v místním prostředí, aby vyhovovaly vašim potřebám:

Konvence značek Doporučení Příklad Značka rolling Doporučeno pro produkční prostředí
{major}.{minor}.{patch} Pomocí této značky vždy spustíte stejnou verzi brány. 2.0.0 ✔️
v{major} Pomocí této značky vždy spustíte hlavní verzi brány s každou novou funkcí a opravou. v2 ✔️
v{major}-preview Tuto značku použijte, pokud chcete vždy spustit nejnovější image kontejneru ve verzi Preview. v2-preview ✔️
latest Tuto značku použijte, pokud chcete vyhodnotit bránu v místním prostředí. latest ✔️
beta1 Tuto značku použijte, pokud chcete vyhodnotit verze Preview brány v místním prostředí. beta ✔️

Úplný seznam dostupných značek najdete tady.

Verze Preview se oficiálně nepodporují a jsou určené jenom pro experimentální účely. Podívejte se na zásady podpory brány v místním prostředí.

Použití značek v našich oficiálních možnostech nasazení

Naše možnosti nasazení na webu Azure Portal používají v2 značku, která zákazníkům umožňuje používat nejnovější verzi image kontejneru brány v2 v2 se všemi aktualizacemi a opravami funkcí.

Poznámka:

Jako referenci poskytujeme fragmenty příkazů a YAML. Pokud chcete, můžete použít konkrétnější značku.

Při instalaci pomocí našeho chartu Helm je označování obrázků optimalizované pro vás. Verze aplikace Helm chartu připne bránu na danou verzi a nespoléhá na latestni .

Přečtěte si další informace o tom, jak nainstalovat bránu služby API Management v místním prostředí v Kubernetes s Helmem.

Riziko používání klouzavých značek

Kumulativní značky jsou značky, které se potenciálně aktualizují při vydání nové verze image kontejneru. Díky tomu můžou uživatelé kontejneru dostávat aktualizace image kontejneru, aniž by museli aktualizovat svá nasazení.

To znamená, že můžete paralelně spouštět různé verze, aniž byste je museli znát, například při provádění akcí škálování po v2 aktualizaci značky.

Příklad – v2 značka byla vydána s 2.0.0 imagí kontejneru, ale jakmile 2.1.0 bude vydána, v2 značka bude propojena s imagí 2.1.0 .

Důležité

Zvažte použití konkrétní značky verze v produkčním prostředí, abyste se vyhnuli neúmyslnému upgradu na novější verzi.

Možnosti připojení k Azure

Brány v místním prostředí vyžadují odchozí připojení TCP/IP k Azure na portu 443. Každá brána v místním prostředí musí být přidružena k jedné službě správy rozhraní API a je konfigurována prostřednictvím její roviny správy. Brána v místním prostředí využívá připojení k Azure pro:

  • Hlášení stavu odesíláním zpráv prezenčních signálů každou minutu
  • Pravidelná kontrola (každých 10 sekund) a použití aktualizací konfigurace, kdykoli jsou k dispozici
  • Odesílání metrik do Azure Monitoru, pokud je k tomu nakonfigurovaný
  • Odesílání událostí do Application Insights, pokud je to nastaveno

Důležité

Podpora místních imagí kontejnerů služby Azure API Management verze 0 a verze 1 končí 1. října 2023 spolu s odpovídajícím konfiguračním rozhraním API v1. Pomocí našeho průvodce migrací můžete používat místní bránu verze 2.0.0 nebo vyšší s rozhraním CONFIGURATION API v2. Další informace najdete v naší dokumentaci k vyřazení

Závislosti plně kvalifikovaného názvu domény

Aby každá brána v místním prostředí fungovala správně, potřebuje odchozí připojení na portu 443 k následujícím koncovým bodům přidruženým ke své cloudové instanci služby API Management:

Popis Požadováno pro v1 Požadováno pro v2 Notes
Název hostitele koncového bodu konfigurace <apim-service-name>.management.azure-api.net <apim-service-name>.configuration.azure-api.net1 Podporují se také vlastní názvy hostitelů a dají se použít místo výchozího názvu hostitele.
Veřejná IP adresa instance služby API Management ✔️ ✔️ Stačí IP adresa primárního umístění.
Veřejné IP adresy značky služby Azure Storage ✔️ Volitelné2 IP adresy musí odpovídat primárnímu umístění instance služby API Management.
Název hostitele účtu služby Azure Blob Storage ✔️ Volitelné2 Účet přidružený k instanci (<blob-storage-account-name>.blob.core.windows.net)
Název hostitele účtu Azure Table Storage ✔️ Volitelné2 Účet přidružený k instanci (<table-storage-account-name>.table.core.windows.net)
Koncové body pro Azure Resource Manager ✔️ Volitelné3 Požadované koncové body jsou management.azure.com.
Koncové body pro integraci Microsoft Entra ✔️ Volitelné4 Požadované koncové body jsou <region>.login.microsoft.com a login.microsoftonline.com.
Koncové body pro integraci Aplikace Azure Přehledy Volitelné5 Volitelné5 Minimální požadované koncové body jsou:
  • rt.services.visualstudio.com:443
  • dc.services.visualstudio.com:443
  • {region}.livediagnostics.monitor.azure.com:443
Další informace najdete v dokumentaci ke službě Azure Monitor
Koncové body pro integraci služby Event Hubs Volitelné5 Volitelné5 Další informace najdete v dokumentaci ke službě Azure Event Hubs
Koncové body pro integraci externí mezipaměti Volitelné5 Volitelné5 Tento požadavek závisí na používané externí mezipaměti.

1Pro instanci služby API Management v interní virtuální síti povolte privátní připojení ke koncovému bodu konfigurace v2 z umístění brány v místním prostředí, například pomocí privátního DNS v partnerské síti.
2Vyžaduje se pouze v 2, pokud se v zásadách používají inspektor rozhraní API nebo kvóty.
3Vyžaduje se pouze při použití ověřování Microsoft Entra k ověření oprávnění RBAC.
4Vyžaduje se pouze při použití ověřování Microsoft Entra nebo zásad souvisejících s Microsoft Entra.
5Vyžaduje se pouze při použití funkce a vyžaduje veřejné IP adresy, port a informace o názvu hostitele.

Důležité

  • Názvy hostitelů DNS musí být přeložitelné na IP adresy a odpovídající IP adresy musí být dostupné.
  • Názvy přidružených účtů úložiště jsou uvedené na stránce stavu síťového připojení služby na webu Azure Portal.
  • Veřejné IP adresy související s přidruženými účty úložiště jsou dynamické a můžou se měnit bez předchozího upozornění.

Možnosti ověřování

Pokud chcete ověřit připojení mezi místní bránou a koncovým bodem konfigurace cloudové instance služby API Management, máte v nastavení konfigurace kontejneru brány následující možnosti.

Možnost Důležité informace
Ověřování Microsoft Entra Konfigurace jedné nebo více aplikací Microsoft Entra pro přístup k bráně

Správa přístupu samostatně pro každou aplikaci

Konfigurace delší doby vypršení platnosti tajných kódů v souladu se zásadami vaší organizace

Použití standardních postupů Microsoft Entra k přiřazení nebo odvolání oprávnění uživatele nebo skupiny k aplikaci a obměně tajných kódů

Přístupový token brány (označovaný také jako ověřovací klíč) Platnost tokenu vyprší maximálně každých 30 dnů a v kontejnerech se musí obnovit.

Zajištěný klíčem brány, který je možné otočit nezávisle (například odvolat přístup)

Opětovné vygenerování klíče brány zneplatní všechny přístupové tokeny vytvořené s ním

selhání Připojení ivity

Když dojde ke ztrátě připojení k Azure, brána v místním prostředí nemůže přijímat aktualizace konfigurace, hlásit stav nebo nahrát telemetrii.

Brána v místním prostředí je navržená tak, aby "selhala statická" a dokáže přežít dočasnou ztrátu připojení k Azure. Dá se nasadit s místním zálohováním konfigurace nebo bez něj. Při zálohování konfigurace brány v místním prostředí pravidelně ukládají záložní kopii nejnovější stažené konfigurace na trvalém svazku připojeném ke svému kontejneru nebo podu.

Když je vypnuté zálohování konfigurace a připojení k Azure se přeruší:

  • Spuštění bran v místním prostředí bude dál fungovat pomocí kopie konfigurace v paměti.
  • Zastavené brány v místním prostředí nebudou moct spustit

Když je zapnuté zálohování konfigurace a přeruší se připojení k Azure:

  • Spuštění bran v místním prostředí bude dál fungovat pomocí kopie konfigurace v paměti.
  • Zastavené brány v místním prostředí budou moct začít používat záložní kopii konfigurace.

Po obnovení připojení se každá místní brána ovlivněná výpadkem automaticky znovu připojí ke své přidružené službě API Management a stáhne všechny aktualizace konfigurace, ke kterým došlo, když byla brána offline.

Zabezpečení

Omezení

V branách v místním prostředí nejsou k dispozici následující funkce, které se nacházejí ve spravovaných branách:

  • Obnovení relace PROTOKOLU TLS
  • Znovujednání klientského certifikátu Aby bylo možné použít ověřování klientských certifikátů, musí příjemci rozhraní API předložit své certifikáty jako součást počátečního metody handshake protokolu TLS. Chcete-li zajistit toto chování, povolte nastavení Vyjednat klientský certifikát při konfiguraci vlastního názvu hostitele (název domény) brány v místním prostředí.

Protokol TLS (Transport Layer Security)

Důležité

Tento přehled platí jenom pro bránu v1 a v2 v místním prostředí.

Podporované protokoly

Brána v místním prostředí ve výchozím nastavení podporuje protokol TLS verze 1.2.

Zákazníci, kteří používají vlastní domény, můžou v řídicí rovině povolit protokol TLS verze 1.0 nebo v1.1.

Dostupné šifrovací sady

Důležité

Tento přehled platí jenom pro bránu v2 v místním prostředí.

Brána v místním prostředí používá pro připojení klienta i serveru následující šifrovací sady:

  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • TLS_AES_128_GCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
  • TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
  • TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_DHE_RSA_WITH_AES_256_CBC_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
  • TLS_DHE_RSA_WITH_AES_128_CBC_SHA256
  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
  • TLS_DHE_RSA_WITH_AES_256_CBC_SHA
  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_DHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_RSA_WITH_AES_256_GCM_SHA384
  • TLS_RSA_WITH_AES_128_GCM_SHA256
  • TLS_RSA_WITH_AES_256_CBC_SHA256
  • TLS_RSA_WITH_AES_128_CBC_SHA256
  • TLS_RSA_WITH_AES_256_CBC_SHA
  • TLS_RSA_WITH_AES_128_CBC_SHA

Správa šifrovacích sad

Od verze 2.1.1 a vyšší můžete spravovat šifry používané prostřednictvím konfigurace:

  • net.server.tls.ciphers.allowed-suites umožňuje definovat čárkami oddělený seznam šifer, které se mají použít pro připojení TLS mezi klientem rozhraní API a bránou v místním prostředí.
  • net.client.tls.ciphers.allowed-suites umožňuje definovat čárkami oddělený seznam šifer, které se mají použít pro připojení TLS mezi bránou v místním prostředí a back-endem.

Další kroky