Zabezpečení azure Functions pomocí služby Event Hubs
Při konfiguraci přístupu k prostředkům v Azure byste měli použít jemně odstupňovanou kontrolu nad oprávněními k prostředkům. Přístup k těmto prostředkům by měl být založený na tom, že potřebujete znát zásady zabezpečení s nejnižšími oprávněními , aby klienti mohli provádět pouze omezenou sadu akcí udělených jim.
Autorizace přístupu ke službě Event Hubs
Autorizaci přístupu k prostředkům Azure Event Hubs je možné provádět pomocí následujících konstruktorů zabezpečení:
Microsoft Entra ID: Microsoft Entra ID poskytuje řízení přístupu na základě role (RBAC) pro podrobné řízení přístupu klienta k prostředkům služby Event Hubs. Na základě udělených rolí a oprávnění microsoft Entra ID autorizuje žádosti pomocí přístupového tokenu OAuth 2.0.
Sdílený přístupový podpis: Sdílený přístupový podpis (SAS) nabízí možnost chránit prostředky služby Event Hubs na základě autorizačních pravidel. Zásady autorizace definujete tak, že vyberete jedno nebo více pravidel zásad, například možnost odesílat zprávy, naslouchat zprávám a spravovat entity v oboru názvů.
Aspekty sdíleného přístupového podpisu
Při použití sdíleného přístupového podpisu se službou Azure Functions a službou Event Hubs byste měli zkontrolovat následující aspekty:
Vyhněte se právu Spravovat: Kromě toho, že můžete spravovat entity v oboru názvů služby Event Hubs, práva Spravovat zahrnuje práva Pro odesílání i naslouchání. V ideálním případě by měla být aplikace funkcí udělena pouze kombinaci práv odeslat a naslouchat na základě akcí, které provádějí.
Nepoužívejte výchozí pravidlo Spravovat: Nepoužívejte výchozí pravidlo zásad s názvem RootManageSharedAccessKey , pokud ji aplikace funkcí nepotřebuje, což by mělo být neobvyklé. Dalším upozorněním na toto výchozí pravidlo je, že se vytvoří na úrovni oboru názvů a udělí oprávnění všem podkladovým centrem událostí.
Zkontrolujte obory zásad sdíleného přístupu: Zásady sdíleného přístupu je možné vytvořit na úrovni oboru názvů a v centru událostí. Zvažte vytvoření podrobnýchzásadch
Spravovaná identita
Identitu Active Directory je možné přiřadit ke spravovanému prostředku v Azure, jako je aplikace funkcí nebo webová aplikace. Jakmile je identita přiřazená, má možnosti pracovat s dalšími prostředky, které k autorizaci používají ID Microsoft Entra, podobně jako instanční objekt.
Aplikace funkcí je možné přiřadit spravovanou identitu a využívat připojení založená na identitě pro podmnožinu služeb, včetně služby Event Hubs. Připojení založená na identitě poskytují podporu pro rozšíření triggeru i výstupní vazby a musí pro podporu používat rozšíření Event Hubs 5.x a vyšší .
Síť
Ve výchozím nastavení jsou obory názvů služby Event Hubs přístupné z internetu, pokud je požadavek dodáván s platným ověřováním a autorizací. Existují tři možnosti omezení síťového přístupu k oborům názvů služby Event Hubs:
- Povolit přístup z konkrétních IP adres
- Povolit přístup z konkrétních virtuálních sítí (koncových bodů služby)
- Povolení přístupu prostřednictvím privátních koncových bodů
Ve všech případech je důležité si uvědomit, že je zadané alespoň jedno pravidlo brány firewall protokolu IP nebo pravidlo virtuální sítě pro obor názvů. Jinak pokud není zadána žádná IP adresa nebo pravidlo virtuální sítě, bude obor názvů přístupný přes veřejný internet (pomocí přístupového klíče).
Azure Functions je možné nakonfigurovat tak, aby spotřebovávat události z centra událostí nebo je publikovat do center událostí, které jsou nastavené s koncovými body služby nebo privátními koncovými body. Aby se vaše aplikace funkcí připojila k centru událostí pomocí koncového bodu služby nebo privátního koncového bodu, je potřeba integrace místní virtuální sítě.
Když integrujete funkce s virtuální sítí a povolíte vnetRouteAllEnabled
, veškerý odchozí provoz z aplikace funkcí se vynucuje přes virtuální síť. To je zvlášť důležité pro scénáře, ve kterých chcete aplikaci funkcí zabezpečit zajištěním veškerého provozu, včetně provozu do služeb Azure, prochází vaší virtuální sítí za účelem kontroly a kontroly. Pokud chcete plně uzamknout aplikaci funkcí, musíte také omezit účet úložiště.
Aby bylo možné aktivovat (spotřebovávat) události v prostředí virtuální sítě, musí být aplikace funkcí hostovaná v plánu Premium, v plánu Dedicated (App Service) nebo ve službě App Service Environment (ASE).
Kromě toho spouštění v plánu Azure Functions Premium a využívání událostí z centra událostí s omezeným přístupem virtuální sítě vyžaduje podporu triggeru virtuální sítě, která se označuje také jako monitorování škálování modulu runtime. Monitorování škálování modulu runtime je možné nakonfigurovat prostřednictvím webu Azure Portal, Azure CLI nebo jiných řešení nasazení. Monitorování škálování modulu runtime není k dispozici, pokud je funkce spuštěná v plánu Dedicated (App Service) nebo ve službě ASE.
Přispěvatelé
Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.
Hlavní autor:
- David Barkol | Hlavní specialista řešení GBB
Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.
Další kroky
Než budete pokračovat, zvažte kontrolu těchto souvisejících článků: