Tento článek ukazuje, jak nastavit vylepšené privátní připojení zabezpečení k webové aplikaci služby App Service nebo aplikaci funkcí z místní sítě nebo z virtuální sítě Azure. Ukazuje také, jak nastavit vylepšené připojení zabezpečení mezi aplikací a dalšími službami Azure PaaS přes Azure Private Link bez použití veřejného internetu.
V tomto článku Aplikace Azure Service odkazuje na cenové úrovně, ve kterých je sdílená infrastruktura s ostatními zákazníky služby App Service, jako jsou Basic, Standard a Úrovně Premium. App Service Environment se nasadí přímo do vaší virtuální sítě s vyhrazenou podpůrnou infrastrukturou a používá izolované cenové úrovně a nezaměřuje se na tento článek.
Architektura
Stáhněte si soubor aplikace Visio s touto architekturou.
Tok dat
Pomocí integrace místní virtuální sítě Aplikace Azure Service se webová aplikace připojí ke službám Azure prostřednictvím delegované podsítě integrace virtuální sítě ve virtuální síti Azure.
- Podsíť integrace virtuální sítě a sítě podsítě privátních koncových bodů jsou samostatné virtuální sítě v různých předplatných. Obě sítě jsou v partnerském vztahu se službou Hub Virtual Network jako součást konfigurace hvězdicové sítě. V případě integrace regionálních virtuálních sítí musí být partnerské virtuální sítě ve stejné oblasti Azure.
Služba Azure Private Link nastaví privátní koncový bod pro služby PaaS, webové aplikace, databázi Azure SQL, účet úložiště Azure a trezor klíčů Azure ve virtuální síti privátního koncového bodu.
V tomto příkladu je tato virtuální síť vyhrazená pouze pro nasazení privátních koncových bodů. V této virtuální síti se nenasadí žádné další prostředky, jako jsou virtuální počítače. Při výběru velikosti podsítě se zohlednila budoucí poptávka po přidání privátních koncových bodů.
Místní síť a virtuální sítě Azure je možné připojit prostřednictvím sítě VPN typu Site-to-Site (S2S) nebo privátního partnerského vztahu Azure ExpressRoute. Uživatelé v místní síti přistupují k aplikaci soukromě a s lepším zabezpečením pouze přes privátní síť.
V tomto příkladu se místní síť a virtuální sítě Azure připojují prostřednictvím privátního partnerského vztahu ExpressRoute.
Pro místní síť, která už má řešení DNS (Domain Name System), je místní řešení DNS nakonfigurované tak, aby předávalo provoz DNS do privátního záznamu DNS Azure (například azurewebsites.net) prostřednictvím podmíněného předávacího modulu , který požadavek předává příchozímu koncovému bodu služby DNS Private Resolver, který je nasazený v Azure. Privátní překladač DNS se dotazuje na Azure DNS a přijímá informace o propojení azure Privátní DNS virtuální sítě. Pak překlad provádí privátní zóna DNS propojená s virtuální sítí.
Privátní DNS zóny se také nasazují ve stejném předplatném jako Virtual Network privátního koncového bodu
V tomto příkladu počítač pro předávání DNS na IP adrese 192.168.0.254 v místní síti předává všechny požadavky překladu DNS na název hostitele azurewebsites.net příchozímu koncovému bodu služby DNS Private Resolver v Azure na adrese 10.0.0.132. Požadavky se pak přeloží službou DNS poskytovanou Azure, která má IP adresu 168.63.129.16 prostřednictvím zóny Azure Privátní DNS, která je propojená s virtuální sítí.
Odchozí koncový bod je nutný k povolení překladu ip adres podmíněného předávání z Azure do místního prostředí, jiných poskytovatelů cloudu nebo externích serverů DNS pomocí sady pravidel předávání DNS.
Pro tento scénář není potřeba konfigurovat sadu pravidel předávání DNS.
Tato konfigurace služby App Service by měla být k dispozici:
Key Hodnota WEBSITE_DNS_SERVER 168.63.129.16 Virtuální sítě jsou propojené se všemi privátními zónami DNS Azure.
- Virtuální síť s privátními koncovými body se automaticky propojila s privátními zónami DNS. Potřebujete propojit ostatní virtuální sítě samostatně.
Webová aplikace komunikuje s privátními koncovými body služeb PaaS ve virtuální síti privátních koncových bodů prostřednictvím služby Azure Firewall.
Ve službě Azure Firewall jsou pravidla aplikace nakonfigurovaná tak, aby umožňovala komunikaci mezi podsítí integrace virtuální sítě a privátními koncovými body prostředků PaaS. Plně kvalifikované názvy domén cíle jsou:
*.azurewebsites.net
*.database.windows.net
*.core.windows.net
*.vaultcore.azure.net
Konfigurace brány firewall a virtuální sítě pro Azure SQL, účet služby Azure Storage a Azure Key Vault umožňují provoz pouze z podsítě integrace virtuální sítě. Konfigurace neumožňuje komunikaci s žádnou jinou virtuální sítí ani s veřejným internetem.
Komponenty
- Aplikace Azure Služba hostuje webové aplikace a aplikace funkcí, což umožňuje automatické škálování a vysokou dostupnost bez nutnosti správy infrastruktury.
- Azure SQL Database je spravovaná služba relační databáze pro obecné účely, která podporuje relační data, prostorová data, JSON a XML.
- Účet Azure Storage poskytuje jedinečný obor názvů pro data Azure Storage, která jsou přístupná odkudkoli na světě přes protokol HTTP nebo HTTPS. Obsahuje všechny datové objekty Azure Storage: objekty blob, sdílené složky, fronty, tabulky a disky.
- Azure Key Vault je služba pro bezpečné ukládání a přístup ke klíčům rozhraní API, heslům, certifikátům, kryptografickým klíčům nebo jakýmkoli jiným tajným kódům používaným cloudovými aplikacemi a službami.
- Azure Virtual Network je základním stavebním blokem privátních sítí v Azure. Prostředky Azure, jako jsou virtuální počítače, můžou mezi sebou bezpečně komunikovat, internetem a místními sítěmi prostřednictvím virtuálních sítí.
- Azure Private Link poskytuje ve virtuální síti privátní koncový bod pro připojení ke službám Azure PaaS, jako je Azure Storage a SQL Database, nebo k zákaznickým nebo partnerským službám.
- Privátní partnerský vztah Azure ExpressRoute rozšiřuje místní sítě do cloudu Microsoftu přes privátní připojení. Místo použití Azure ExpressRoute můžete vytvořit síť VPN typu Site-to-Site mezi místním prostředím a sítí Azure.
- Azure Firewall je spravovaná cloudová služba zabezpečení sítě, která pomáhá chránit prostředky služby Azure Virtual Network.
- Privátní DNS Zone poskytuje spolehlivou a zabezpečenou službu DNS pro správu a překlad názvů domén ve virtuální síti.
- Privátní překladač DNS umožňuje dotazování privátních zón Azure DNS z místního prostředí a naopak bez nasazení serverů DNS založených na virtuálních počítačích.
Alternativy
Alternativním přístupem k privátnímu připojení je použití služby App Service Environment k hostování webové aplikace v izolovaném prostředí. App Service Environment zabraňuje sdílené hostitelské infrastruktuře mezi zákazníky služby App Service. Pro databázi můžete nativně nasadit službu Azure SQL Managed Instance ve virtuální síti, takže nepotřebujete integrace virtuální sítě ani privátní koncové body. Tyto nabídky jsou obvykle dražší, protože poskytují izolované nasazení s jedním tenantem a další funkce.
Pokud máte službu App Service Environment, ale nepoužíváte spravovanou instanci SQL, můžete k privátnímu připojení k databázi Azure SQL použít privátní koncový bod. Pokud už máte spravovanou instanci SQL, ale používáte službu App Service, můžete se k privátní adrese služby SQL Managed Instance připojit pomocí integrace místní virtuální sítě.
U některých dalších služeb Azure, jako je Key Vault nebo Storage, neexistuje žádná alternativa k používání privátních koncových bodů pro vysoce zabezpečená a privátní připojení z Web Apps.
Potenciální případy použití
- Přístup k webové aplikaci služby App Service nebo aplikaci funkcí soukromě s vylepšeným zabezpečením přes jeho privátní koncový bod z místní sítě nebo z virtuálních sítí Azure.
- Připojení z webové aplikace nebo aplikace funkcí k nabídkám Platformy jako služby Azure (PaaS):
- Jiná webová aplikace
- SQL Database
- Azure Storage
- Key Vault
- Všechny ostatní služby, které podporují privátní koncové body Azure pro příchozí připojení
Důležité informace
Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.
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 najdete v tématu Přehled pilíře zabezpečení.
Použití privátního koncového bodu pro webovou aplikaci umožňuje:
- Pomozte zabezpečit webovou aplikaci konfigurací privátního koncového bodu a eliminujte tak veřejné vystavení.
- Připojte se s vylepšeným zabezpečením k Web Apps z místních sítí, které se připojují k virtuální síti pomocí privátního partnerského vztahu VPN nebo ExpressRoute. Příchozí připojení k webové aplikaci jsou povolená jenom z místní sítě nebo z virtuální sítě Azure.
- Vyhněte se exfiltraci dat z vaší virtuální sítě.
Zabezpečení příchozího připojení k webové aplikaci můžete dále vylepšit tak, že před aplikaci předáte službu, jako je Aplikace Azure lication Gateway nebo Azure Front Door, volitelně s firewallem webových aplikací Azure. Když pro webovou aplikaci povolíte privátní koncový bod, nevyhodnotí se konfigurace omezení přístupu webové aplikace.
Tento scénář také zlepšuje zabezpečení odchozího připojení z webové aplikace služby App Service k podřízené závislosti, jako je databáze, úložiště nebo key Vault.
Směrování aplikací můžete nakonfigurovat tak, aby směrovat veškerý provoz nebo jenom privátní provoz (označovaný také jako RFC1918 provoz) do vaší virtuální sítě. Toto chování nakonfigurujete pomocí nastavení Směrovat vše . Pokud je možnost Route All zakázaná, webová aplikace směruje do vaší virtuální sítě jenom privátní provoz. Pokud chcete blokovat provoz na veřejné adresy, povolte nastavení Route All do virtuální sítě. Skupinu zabezpečení sítě můžete použít také k blokování odchozího provozu do prostředků ve vaší virtuální síti nebo internetu. Pokud není povolená funkce Route All , skupiny zabezpečení sítě se použijí jenom na RFC1918 provoz.
V tomto příkladu webová aplikace nemusí komunikovat s žádnou službou, která není ve virtuální síti, takže je povolená možnost Route All .
Důležitým aspektem zabezpečení v tomto scénáři je konfigurace brány firewall pro prostředky PaaS.
Možnosti brány firewall služby SQL Database
Bez použití privátního připojení můžete přidat pravidla brány firewall, která povolují příchozí provoz jenom z určených rozsahů IP adres. Dalším přístupem je umožnit službám Azure přístup k serveru. Tento přístup uzamkne bránu firewall tak, aby umožňoval pouze provoz z Azure. Tento provoz ale zahrnuje všechny oblasti Azure a další zákazníky.
Můžete také přidat přísnější pravidlo brány firewall, které povolí přístup k databázi jenom odchozím IP adresm vaší aplikace. Tyto IP adresy se ale sdílí s více službami App Services a umožňují provoz od jiných zákazníků na stejném razítku nasazení, který používá stejné odchozí IP adresy.
Použití privátního připojení prostřednictvím virtuální sítě poskytuje tyto možnosti brány firewall, které ostatním pomáhají zabránit v přístupu k databázi:
- V tomto příkladu vytvořte pravidlo virtuální sítě, které povoluje provoz pouze z regionální podsítě delegované integrací virtuální sítě, podsítí integrace virtuální sítě. Delegovaná podsíť musí mít nakonfigurovaný koncový bod služby pro Microsoft.Sql , aby databáze mohl identifikovat provoz z této podsítě.
- Nakonfigurujte bránu firewall tak, aby odepřela přístup k veřejné síti. Tím vypnete všechna ostatní pravidla brány firewall a zpřístupníte databázi jenom prostřednictvím svého privátního koncového bodu.
Možnost odepření přístupu k veřejné síti je nejbezpečnější konfigurací. Pokud ale použijete tuto možnost, přístup k databázi je možný pouze prostřednictvím virtuální sítě, která je hostitelem privátního koncového bodu. Pokud se chcete připojit k databázi, musí mít cokoli jiného než webová aplikace přímé připojení k virtuální síti.
Například nasazení nebo naléhavé ruční připojení z APLIKACE SQL Server Management Studio (SSMS) na místních počítačích se nemůžou spojit s databází s výjimkou připojení VPN nebo ExpressRoute k virtuální síti. Můžete se také vzdáleně připojit k virtuálnímu počítači ve virtuální síti a odtud používat SSMS. V případě výjimečných situací můžete dočasně povolit přístup k veřejné síti a snížit riziko pomocí dalších možností konfigurace.
Možnosti brány firewall účtu úložiště a služby Key Vault
Účty úložiště a trezory klíčů mají veřejný koncový bod, který je přístupný z internetu. Můžete také vytvořit privátní koncové body pro účet úložiště a trezor klíčů. Tím tyto služby přiřadí privátní IP adresu z vaší virtuální sítě a pomůže zabezpečit veškerý provoz mezi vaší virtuální sítí a příslušnou službou přes privátní propojení.
Při vytváření privátního koncového bodu může podsíť integrace virtuální sítě přistupovat k této službě soukromě a s vylepšeným zabezpečením přes privátní propojení. Účet úložiště a trezor klíčů jsou ale stále přístupné z jiných virtuálních sítí Azure. Pokud chcete blokovat přístup z jakékoli jiné virtuální sítě, vytvořte koncový bod služby pro tuto delegovanou podsíť.
Dostupnost
Podpora služby Private Link pro App Service, Azure SQL Database, Azure Storage a Azure Key Vault je dostupná ve všech veřejných oblastech. Informace o kontrole dostupnosti v jiných oblastech najdete v tématu Dostupnost služby Azure Private Link.
Private Link zavádí další komponentu a aspekty dostupnosti v architektuře. Služba Private Link má smlouvu SLA s vysokou dostupností. Tuto smlouvu SLA je potřeba vzít v úvahu při výpočtu složeného SLO celého řešení.
Škálovatelnost
Informace o integraci služby Azure Private Link pro paaS se zónami Azure Privátní DNS v architekturách hvězdicové sítě najdete ve velkém měřítku v tématu Integrace služby Private Link a DNS.
Globální partnerský vztah
Každá služba v jakékoli oblasti Azure, která se může připojit přes virtuální síť, může přistupovat k privátním koncovým bodům služeb PaaS, například prostřednictvím partnerského vztahu virtuálních sítí v topologiích hvězdicové architektury. V případě regionální integrace virtuální sítě služby App Service se ale partnerské virtuální sítě musí nacházet ve stejné oblasti Azure.
Nedostatek podpory globálního partnerského vztahu znamená, že toto řešení nemůžete použít pro připojení mezi oblastmi ze služby App Service k databázi nebo jinému privátnímu koncovému bodu v jiné oblasti Azure. Například toto řešení nebude fungovat pro nasazení ve více oblastech, aby podporovalo částečné převzetí služeb při selhání, ve kterém webová aplikace zůstává aktivní v jedné oblasti, ale musí se připojit k databázi s převzetím služeb při selhání v jiné oblasti nebo naopak. Ale pro tuto situaci existují jiná řešení.
Pokud potřebujete připojit Web Apps k virtuální síti v jiné oblasti, můžete nastavit integraci virtuální sítě vyžadované bránou. Omezení spočívá v tom, že integraci virtuální sítě vyžadované bránou nejde použít s virtuální sítí připojenou k Azure ExpressRoute.
Protokolování a monitorování
Služba Azure Private Link je integrovaná se službou Azure Monitor, která umožňuje zjistit, jestli data proudí.
Pomocí služby Řešení potíží s připojením ve službě Azure Network Watcher můžete také trasovat připojení z virtuálního počítače ve virtuální síti k plně kvalifikovanému názvu domény prostředku privátního koncového bodu.
Optimalizace nákladů
Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v tématu Přehled pilíře optimalizace nákladů.
V podporovaných cenových úrovních Úrovně Basic, Standard, Premium v2, Premium v3, Izolované služby App Service a Azure Functions Premium nejsou k dispozici žádné další náklady na regionální integraci virtuální sítě App Service služby App Service.
Privátní koncový bod je k dispozici pro webové aplikace pro Windows a webové aplikace pro Linux, kontejnerizované nebo ne, hostované na úrovni Basic, Standard, Premium v2, Premium v3 a Izolované plány služby App Service a také pro aplikace funkcí nasazené do plánu Premium.
Služba Azure Private Link, která umožňuje privátním koncovým bodům pro služby PaaS, má přidružené náklady založené na hodinovém poplatku plus premium na šířce pásma. Podrobnosti najdete na stránce s cenami služby Private Link. Za připojení z klientské virtuální sítě ke službě Azure Firewall v centrální virtuální síti se účtují poplatky. Za připojení ze služby Azure Firewall v centrální virtuální síti k privátním koncovým bodům v partnerské virtuální síti se vám neúčtují poplatky.
Náklady na zónu Azure Privátní DNS vycházejí z počtu zón DNS hostovaných v Azure a počtu přijatých dotazů DNS.
Pokud chcete prozkoumat náklady na provoz tohoto scénáře, podívejte se na odhad cenové kalkulačky Azure. Všechny služby popsané v tomto článku jsou předem nakonfigurované s rozumnými výchozími hodnotami pro malou aplikaci. Pokud chcete zjistit, jak by se ceny pro váš případ použití změnily, změňte příslušné proměnné tak, aby odpovídaly očekávanému využití.
Přispěvatelé
Tento článek spravuje Microsoft. Původně byl napsán následujícím přispěvatelem.
Hlavní autor:
- Ankit Singhal | Architekt cloudového řešení
Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.
Další kroky
- Podrobné pokyny k integraci Azure Functions s virtuální sítí Azure pomocí privátních koncových bodů
- Podívejte se na postup konfigurace pravidel aplikace služby Azure Firewall pro kontrolu provozu směřujícího do privátních koncových bodů v různých síťových topologiích.
- Další informace o příchozích a odchozích scénářích služby App Service a o funkcích, které se mají použít v takovém případě, najdete v přehledu síťových funkcí služby App Service.
- Další informace o privátních koncových bodech pro Azure Web Apps najdete v tématu Použití privátních koncových bodů pro Azure Web Apps.
- Další informace o integraci webových aplikací služby App Service se službou Azure Virtual Network najdete v tématu Integrace aplikace s virtuální sítí Azure.
- Plně kvalifikovaný název domény některých služeb PaaS se může automaticky přeložit na veřejnou IP adresu. Informace o přepsání konfigurace DNS pro připojení k privátnímu koncovému bodu najdete v tématu Konfigurace DNS privátního koncového bodu Azure.