Hybridní připojení Azure App Service
Hybrid Connections je služba v Azure a funkce v Azure App Service. Jako služba má využití a možnosti nad rámec těch, které se používají v App Service. Další informace o Hybrid Connections a jejich používání mimo App Service najdete v tématu Azure Relay Hybrid Connections.
V rámci App Service lze Hybrid Connections použít pro přístup k prostředkům aplikací v libovolné síti, která může provádět odchozí volání do Azure přes port 443. Hybrid Connections poskytuje přístup z vaší aplikace do koncového bodu TCP a nepovoluje pro přístup k aplikaci nový způsob přístupu. Jak se používá v App Service, každé hybridní připojení se koreluje s jedinou kombinací hostitele TCP a portu. Díky tomu budou mít vaše aplikace přístup k prostředkům v jakémkoli operačním systému, za předpokladu, že se jedná o koncový bod TCP. Funkce Hybrid Connections neví ani nezáleží na tom, jaký je protokol aplikace nebo k čemu přistupujete. Jednoduše poskytuje přístup k síti.
Jak to funguje
Hybrid Connections vyžaduje, aby byl nanasazený přenosový agent, kde může dosáhnout i pro požadovaný koncový bod i pro Azure. přenosový agent, Správce hybridního připojení (HCM), volá Azure Relay přes port 443. Z webu webové aplikace se App Service infrastruktura také připojuje k Azure Relay jménem vaší aplikace. Přes připojená připojení může aplikace získat přístup k požadovanému koncovému bodu. Připojení používá TLS 1,2 pro zabezpečení a klíče sdíleného přístupového podpisu (SAS) pro ověřování a autorizaci.
Když vaše aplikace vytvoří požadavek DNS, který odpovídá nakonfigurovanému koncovému bodu hybridního připojení, odchozí přenosy TCP se přesměrují prostřednictvím hybridního připojení.
Poznámka
To znamená, že byste se měli pokusit vždy použít název DNS pro hybridní připojení. Některý klientský software neprovede vyhledávání DNS, pokud koncový bod místo toho používá IP adresu.
App Service výhody hybridního připojení
K dispozici je několik výhod Hybrid Connections možností, včetně:
- Aplikace můžou bezpečně přistupovat k místním systémům a službám.
- Tato funkce nevyžaduje koncový bod přístupný z Internetu.
- Nastavení je rychlé a snadné. Nevyžadují se žádné brány.
- Každé hybridní připojení se shoduje s jedním hostitelem: kombinací portů, které jsou užitečné pro zabezpečení.
- Obvykle nevyžaduje otvory brány firewall. Připojení jsou všechna odchozí přes standardní webové porty.
- Vzhledem k tomu, že je tato funkce na úrovni sítě, je nezávislá k jazyku, který používá vaše aplikace, a technologii, kterou používá koncový bod.
- Dá se použít k poskytnutí přístupu v několika sítích z jedné aplikace.
- podporuje se v GA pro Windows aplikace a aplikace pro Linux. nepodporuje se pro Windows kontejnerových aplikací.
Věci, které nemůžete dělat s Hybrid Connections
Mezi věci, které nemůžete Hybrid Connections, patří:
- Připojte jednotku.
- Použijte protokol UDP.
- Přístup ke službám založeným na TCP, které používají dynamické porty, jako je pasivní režim FTP nebo rozšířený pasivní režim.
- Podporuje protokol LDAP, protože může vyžadovat protokol UDP.
- Podporuje službu Active Directory, protože se nemůžete připojit k doméně App Service pracovního procesu.
Přidání a vytvoření Hybrid Connections v aplikaci
Pokud chcete vytvořit hybridní připojení, otevřete Azure Portal a vyberte svou aplikaci. Vyberte sítě > Konfigurace koncových bodů hybridního připojení. Tady vidíte Hybrid Connections, které jsou pro vaši aplikaci nakonfigurované.
Chcete-li přidat nové hybridní připojení, vyberte [+] přidat hybridní připojení. Zobrazí se seznam Hybrid Connections, které jste už vytvořili. Chcete-li do aplikace přidat jednu nebo více z nich, vyberte požadované položky a pak vyberte Přidat vybrané hybridní připojení.
Pokud chcete vytvořit nové hybridní připojení, vyberte vytvořit nové hybridní připojení. Zadejte:
- Název hybridního připojení
- Název hostitele koncového bodu
- Port koncového bodu.
- Service Bus obor názvů, který chcete použít.
každé hybridní připojení je svázáno s oborem názvů Service Bus a každý Service Bus obor názvů je v oblasti Azure. je důležité, abyste se pokusili použít Service Bus obor názvů ve stejné oblasti jako vaši aplikaci, aby nedocházelo k vyvolané latenci sítě.
Pokud chcete odebrat hybridní připojení z vaší aplikace, klikněte na něj pravým tlačítkem myši a vyberte Odpojit.
Když se do aplikace přidá hybridní připojení, zobrazí se vám podrobnosti jednoduše tak, že je vyberete.
Vytvoření hybridního připojení na portálu Azure Relay
Kromě možnosti portálu z aplikace můžete vytvořit Hybrid Connections z portálu Azure Relay. Aby bylo možné používat hybridní připojení App Service, musí:
- Vyžadovat autorizaci klientů.
- Mít položku metadat s názvem koncový bod, která obsahuje kombinaci hostitel: port, jako hodnotu.
Plány Hybrid Connections a App Service
App Service Hybrid Connections jsou k dispozici pouze v jednotkách Basic, Standard, Premium a Isolated price. Existují limity vázané na cenový tarif.
| Cenový tarif | Počet Hybrid Connections použitelný v plánu |
|---|---|
| Basic | 5 podle plánu |
| Standard | 25 na plán |
| Premium (v1-v3) | 220 na aplikaci |
| Izolované (v1-v2) | 220 na aplikaci |
Uživatelské rozhraní App Serviceho plánu ukazuje, kolik Hybrid Connections se používá a co aplikace.
Pokud chcete zobrazit podrobnosti, vyberte hybridní připojení. Můžete zobrazit všechny informace, které jste viděli v zobrazení aplikace. Můžete si také prohlédnout, kolik dalších aplikací ve stejném plánu používá hybridní připojení.
Počet koncových bodů hybridního připojení, které se dají použít v plánu App Service, je omezený. Každé používané hybridní připojení se ale dá použít v jakémkoli počtu aplikací v tomto plánu. Například jedno hybridní připojení, které se používá v pěti samostatných aplikacích v plánu App Service, se počítá jako jedno hybridní připojení.
Ceny
Kromě toho, že App Service požadavek na SKLADOVOU položku plánu, je pro použití Hybrid Connections k dispozici další cena. U každého naslouchacího procesu používaného hybridním připojením se účtuje poplatek. naslouchací proces je Správce hybridního připojení. Pokud jste měli pět Hybrid Connections podporovaná dvěma správci hybridního připojení, bude to 10 posluchačů. další informace najdete v tématu Service Bus ceny.
Správce hybridního připojení
Funkce Hybrid Connections vyžaduje přenosového agenta v síti, který je hostitelem koncového bodu hybridního připojení. agent relay se nazývá Správce hybridního připojení (HCM). Pokud chcete stáhnout HCM, z vaší aplikace v Azure Portalvyberte sítě > Konfigurace koncových bodů hybridního připojení.
tento nástroj běží na Windows Server 2012 a později. HCM běží jako služba a připojuje se k odchozímu připojení Azure Relay na portu 443.
Po instalaci HCM můžete spustit HybridConnectionManagerUi.exe pro použití uživatelského rozhraní pro nástroj. Tento soubor se nachází v Správce hybridního připojení adresáři. V Windows 10 můžete také jednoduše vyhledat uživatelské Správce hybridního připojení ve vyhledávacím poli.
Při spuštění uživatelského rozhraní HCM se jako první zobrazí tabulka se seznamem všech hybridních připojení nakonfigurovaných s touto instancí HCM. Pokud chcete provést nějaké změny, nejprve proveďte ověření v Azure.
Přidání jednoho nebo více hybridních připojení do HCM:
Spusťte uživatelské rozhraní HCM.
Vyberte Přidat nové hybridní připojení.
Přihlaste se pomocí svého účtu Azure a získejte hybridní připojení dostupná ve vašich předplatných. HCM dál nebude používat váš účet Azure.
Zvolte předplatné.
Vyberte hybridní připojení, která má HCM předávací.
Vyberte Uložit.
Teď uvidíte hybridní připojení, která jste přidali. Můžete také vybrat nakonfigurované hybridní připojení a zobrazit podrobnosti.
Pro podporu hybridních připojení, která jsou nakonfigurovaná, vyžaduje HCM:
- Přístup TCP k Azure přes port 443.
- Přístup TCP ke koncovému bodu hybridního připojení.
- Možnost provádět vyhledávání DNS na hostiteli koncového bodu a Service Bus dns.
Poznámka
Azure Relay připojení spoléhá na webové sokety. Tato funkce je dostupná pouze v Windows Server 2012 nebo novějších verzích. Z tohoto důvodu se HCM nepodporuje v nic starším než Windows Server 2012.
Redundance
Každý HCM může podporovat více hybridních připojení. Jakékoli dané hybridní připojení může být také podporováno několika hybridními virtuálními počítače. Výchozím chováním je směrování provozu přes nakonfigurované HCM pro jakýkoli daný koncový bod. Pokud chcete vysokou dostupnost hybridních připojení ze sítě, spusťte několik hybridních počítačů na samostatných počítačích. Algoritmus distribuce zatížení používaný službou Relay k distribuci provozu do HCM je náhodné přiřazení.
Ruční přidání hybridního připojení
Pokud chcete někomu mimo vaše předplatné umožnit hostování instance HCM pro dané hybridní připojení, nasdílejte mu připojovací řetězec brány pro hybridní připojení. Připojovací řetězec brány můžete zobrazit ve vlastnostech hybridního připojení v Azure Portal. Pokud chcete tento řetězec použít, vyberte v HCM Možnost Zadat ručně a vložte připojovací řetězec brány.
Upgrade
K dispozici jsou pravidelné aktualizace Správce hybridního připojení, které opravují problémy nebo poskytují vylepšení. Po vydání upgradu se v uživatelském rozhraní HCM zobrazí automaticky otevírané okno. Při použití upgradu se použijí změny a restartuje HCM.
Programové přidání hybridního připojení do aplikace
Existuje podpora Azure CLI pro hybridní připojení. Zadané příkazy fungují na úrovni aplikace i App Service plánu. Příkazy na úrovni aplikace jsou:
az webapp hybrid-connection
Group
az webapp hybrid-connection : Methods that list, add and remove hybrid-connections from webapps.
This command group is in preview. It may be changed/removed in a future release.
Commands:
add : Add a hybrid-connection to a webapp.
list : List the hybrid-connections on a webapp.
remove : Remove a hybrid-connection from a webapp.
Příkazy App Service plán umožňují nastavit, který klíč bude dané hybridní připojení používat. Pro každé hybridní připojení jsou nastavené dva klíče, primární a sekundární. Pomocí následujících příkazů můžete použít primární nebo sekundární klíč. Díky tomu můžete přepínat klíče pro , když chcete klíče pravidelně znovu generovat.
az appservice hybrid-connection --help
Group
az appservice hybrid-connection : A method that sets the key a hybrid-connection uses.
This command group is in preview. It may be changed/removed in a future release.
Commands:
set-key : Set the key that all apps in an appservice plan use to connect to the hybrid-
connections in that appservice plan.
Zabezpečení hybridních připojení
Existující hybridní připojení může do jiných služeb App Service Web Apps každý uživatel, který má dostatečná oprávnění k podkladové službě Azure Service Bus Relay. To znamená, že pokud musíte ostatním zabránit v opětovném použití stejného hybridního připojení (například pokud je cílovým prostředkem služba, která nemá žádná další bezpečnostní opatření, která by zabránila neoprávněnému přístupu), musíte přístup k Azure Service Bus Relay zamknout.
Každý, kdo má přístup ke službě Relay, uvidí hybridní připojení při pokusu o jeho přidání do své webové aplikace v Azure Portal, ale nebude ho moct přidat, protože nemá oprávnění k načtení připojovacího řetězce, který se používá k navázání Reader přenosového připojení. Aby bylo možné úspěšně přidat hybridní připojení, musí mít listKeys oprávnění ( Microsoft.Relay/namespaces/hybridConnections/authorizationRules/listKeys/action ). Role nebo jakákoli jiná role, která zahrnuje toto oprávnění ve službě Relay, umožní uživatelům používat hybridní připojení a přidat ho do Contributor vlastního Web Apps.
Správa hybridních připojení
Pokud potřebujete změnit hostitele nebo port koncového bodu pro hybridní připojení, postupujte následovně:
- Odeberte hybridní připojení z Správce hybridního připojení na místním počítači tak, že vyberete připojení a v levém horním rohu okna Podrobnosti o hybridním připojení vyberete Odebrat.
- Odpojte hybridní připojení od svého App Service přechodem na Hybridní připojení na stránce App Service sítě.
- Přejděte na Relay pro koncový bod, který potřebujete aktualizovat, a v části Entity v levé navigační nabídce vyberte Hybridní připojení.
- Vyberte hybridní připojení, které chcete aktualizovat, a v části Nastavení v levé navigační nabídce vyberte Vlastnosti.
- Proveďte změny a v horní části klikněte na Uložit změny.
- Vraťte se do nastavení Hybridní připojení pro App Service a znovu přidejte hybridní připojení. Ujistěte se, že se koncový bod aktualizuje podle zamýšleného cíle. Pokud v seznamu nevidíte hybridní připojení, aktualizujte ho za 5 až 10 minut.
- Vraťte se Správce hybridního připojení na místním počítači a znovu přidejte připojení.
Řešení potíží
Stav Připojeno znamená, že alespoň jeden hcm je nakonfigurovaný s tímto hybridním připojením a může se připojit k Azure. Pokud se ve stavu vašeho hybridního připojení zobrazí Připojeno, vaše hybridní připojení není nakonfigurované na žádném hcm, který má přístup k Azure. Když se v HCM zobrazí zpráva Ne připojeno, je několik věcí, které je možné zkontrolovat:
Má váš hostitel odchozí přístup k Azure na portu 443? Na hostiteli HCM můžete testovat pomocí příkazu PowerShellu Test-NetConnection Destination -P Port.
Je váš HCM potenciálně ve špatném stavu? Zkuste restartovat místní službu Azure Správce hybridního připojení Service.
Máte nainstalovaný konfliktní software? Správce hybridního připojení nemůže existovat současně s biztalk Správce hybridního připojení nebo Service Bus pro Windows Server. Proto by se při instalaci HCM měly nejprve odebrat všechny verze těchto balíčků.
Pokud se ve vašem stavu zobrazí Připojeno, ale vaše aplikace se nemůže připojit ke koncovému bodu, pak:
- Ujistěte se, že v hybridním připojení používáte název DNS. Pokud použijete IP adresu, nemusí dojít k požadovaného vyhledávání DNS klienta. Pokud klient spuštěný ve vaší webové aplikaci vyhledávání DNS provést nebude, hybridní připojení nebude fungovat.
- Zkontrolujte, že se název DNS použitý ve vašem hybridním připojení může přeložit z hostitele HCM. Pomocí příkazu nslookup EndpointDNSname zkontrolujte řešení, kde název_koncového_bodu_DNS přesně odpovídá tomu, co se používá v definici hybridního připojení.
- otestujte přístup z hostitele HCM ke koncovému bodu pomocí příkazu PowerShellu Test-NetConnection EndpointDNSname -P Port Pokud se z hostitele HCM nemůžete připojit ke koncovému bodu, zkontrolujte brány firewall mezi těmito dvěma hostiteli včetně všech hostitelských bran firewall na cílovém hostiteli.
- Pokud používáte místní App Service v Linuxu, ujistěte se, že jako hostitele koncového bodu používáte localhost. Místo toho použijte název počítače, pokud se pokoušíte vytvořit připojení k prostředku na místním počítači.
V App Service nástroje příkazového řádku tcpping je možné vyvolat z konzoly Rozšířené nástroje (Kudu). Tento nástroj vám může říct, jestli máte přístup ke koncovému bodu TCP, ale neschová se v tom, jestli máte přístup ke koncovému bodu hybridního připojení. Když použijete nástroj v konzole proti koncovému bodu hybridního připojení, potvrzujete pouze, že používá kombinaci hostitel/port.
Pokud pro koncový bod máte klienta příkazového řádku, můžete otestovat připojení z konzoly aplikace. Můžete například otestovat přístup ke koncovým bodům webového serveru pomocí nástroje curl.