Přehled brány v místním prostředí
PLATÍ PRO: Vývojář | Prémie
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.
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.
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 |
✔️ | ❌ |
beta 1 |
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 latest
ni .
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
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.net 1 |
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 lication Insights | Volitelné5 | Volitelné5 | Minimální požadované koncové body jsou:
|
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. |
1. Informace o instanci služby API Management v interní virtuální síti najdete v tématu Připojení v interní virtuální 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í.
Připojení v interní virtuální síti
Privátní připojení – Pokud je brána v místním prostředí nasazená ve 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.
Připojení k internetu – Pokud se brána v místním prostředí potřebuje připojit ke koncovému bodu konfigurace v2 přes internet, nakonfigurujte vlastní název hostitele pro koncový bod konfigurace a zveřejníte koncový bod pomocí služby Application Gateway.
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í
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
- Další informace o různých branách v přehledu brány rozhraní API
- Další informace o zásadách podpory pro bránu v místním prostředí
- Další informace o službě API Management v hybridním a multicloudovém světě
- Další informace o pokynech pro spuštění brány v místním prostředí v kubernetes v produkčním prostředí
- Nasazení brány v místním prostředí do Dockeru
- Nasazení brány v místním prostředí do Kubernetes
- Nasazení brány v místním prostředí do clusteru Kubernetes s podporou Azure Arc
- Nasazení brány v místním prostředí do Azure Container Apps
- Nastavení konfigurace brány v místním prostředí
- Informace o možnostech pozorovatelnosti ve službě API Management
- Informace o integraci Dapr s bránou v místním prostředí