Ověření aplikace pomocí ID Microsoft Entra pro přístup ke službě Event Hubs

Microsoft Azure poskytuje integrovanou správu řízení přístupu pro prostředky a aplikace založené na ID Microsoft Entra. Klíčovou výhodou použití MICROSOFT Entra ID se službou Azure Event Hubs je, že v kódu nemusíte ukládat přihlašovací údaje. Místo toho požádejte o přístupový token OAuth 2.0 z platformy Microsoft Identity Platform. Název zdroje pro požadavek tokenu je https://eventhubs.azure.net/, a je stejný pro všechny cloudy a tenanty. Pro klienty Kafka je prostředkem pro požadavek na token https://<namespace>.servicebus.windows.net. Microsoft Entra ověřuje objekt zabezpečení, jako je uživatel, skupina, instanční objekt nebo spravovaná identita, která spouští aplikaci. Pokud ověřování proběhne úspěšně, vrátí Microsoft Entra ID přístupový token k aplikaci, který pak může pomocí tokenu autorizovat požadavky na prostředky Azure Event Hubs.

Když přiřadíte roli objektu zabezpečení Microsoft Entra, Azure tomuto objektu zabezpečení udělí přístup k těmto prostředkům. Můžete omezit přístup k odběru, skupině zdrojů, jmennému prostoru Event Hubs nebo jakémukoli zdroji pod ním. Objekt zabezpečení Microsoft Entra může přiřadit role uživateli, skupině, instančnímu objektu aplikace nebo spravované identitě určené pro prostředky Azure.

Note

Definice role je kolekce oprávnění. Řízení přístupu na základě role v Azure (Azure RBAC) vynucuje tato oprávnění prostřednictvím přiřazení role. Přiřazení role zahrnuje tři prvky: objekt zabezpečení, definici role a obor. Další informace najdete v tématu Vysvětlení různých rolí.

Předpoklady

Předdefinované role pro Azure Event Hubs

Azure poskytuje tyto předdefinované role pro autorizaci přístupu k datům služby Event Hubs pomocí Microsoft Entra ID a OAuth:

  • Vlastník dat služby Azure Event Hubs: Pomocí této role můžete poskytnout úplný přístup k prostředkům služby Event Hubs.
  • Odesílatel dat služby Azure Event Hubs: Bezpečnostní objekt přiřazený k této roli může odesílat události do konkrétního centra událostí nebo do všech center událostí v rámci jednoho oboru názvů.
  • Příjemce dat Azure Event Hubs: Hlavní objekt zabezpečení přiřazený k této roli může přijímat události z konkrétního centra událostí nebo všech center událostí v oboru názvů.

Předdefinované role registru schématu najdete v tématu Role registru schématu.

Important

Verze Preview podporovala přidání oprávnění pro přístup k datům služby Event Hubs k roli vlastníka nebo přispěvatele. Tato oprávnění však již nejsou dodržena. Pokud používáte roli Vlastník nebo Přispěvatel, přepněte na roli Vlastník dat služby Azure Event Hubs.

Ověření z aplikace

Klíčovou výhodou použití MICROSOFT Entra ID se službou Event Hubs je, že v kódu nemusíte ukládat svoje přihlašovací údaje. Místo toho požádejte o přístupový token OAuth 2.0 z platformy Microsoft Identity Platform. Microsoft Entra ověřuje objekt zabezpečení (uživatel, skupina nebo instanční objekt), na kterém je aplikace spuštěná. Pokud ověřování proběhne úspěšně, vrátí Microsoft Entra ID přístupový token do aplikace a aplikace pak může použít přístupový token k autorizaci požadavků do služby Azure Event Hubs.

Následující části vysvětlují, jak nakonfigurovat nativní aplikaci nebo webovou aplikaci pro ověřování pomocí platformy Microsoft Identity Platform 2.0. Další informace o platformě Microsoft Identity Platform 2.0 najdete v přehledu platformy Microsoft Identity Platform (v2.0).

Přehled toku udělení kódu OAuth 2.0 najdete v tématu Autorizace přístupu k webovým aplikacím Microsoft Entra pomocí toku udělení kódu OAuth 2.0.

Registrace aplikace pomocí Microsoft Entra ID

Prvním krokem k použití Microsoft Entra ID k autorizaci zdrojů Event Hubu je registrace klientské aplikace s Microsoft Entra tenantem v Centrum pro správu Microsoft Entra. Postupujte podle kroků v rychlém startu : Zaregistrujte aplikaci na platformě Microsoft Identity Platform a zaregistrujte aplikaci v MICROSOFT Entra ID, která představuje vaši aplikaci, která se pokouší získat přístup k prostředkům služby Event Hubs.

Při registraci klientské aplikace zadáte informace o aplikaci. Microsoft Entra ID poskytuje ID klienta označované také jako ID aplikace pro přidružení aplikace k modulu runtime Microsoft Entra. Další informace o ID klienta najdete v tématu Objekty aplikace a objekty služby principal v Microsoft Entra ID.

Note

Pokud aplikaci zaregistrujete jako nativní aplikaci, zadejte libovolné platné URI pro Přesměrovací URI. U nativních aplikací nemusí být tato hodnota skutečnou adresou URL. U webových aplikací musí být přesměrovací URI platným URI, protože určuje adresu URL, kde jsou tokeny poskytovány.

Po registraci aplikace se v části Nastavení zobrazí ID aplikace (klienta):

Snímek obrazovky se stránkou registrace aplikace na webu Azure Portal se zvýrazněným ID aplikace

Vytvoření tajného klíče klienta pro ověřování

Aplikace vyžaduje tajný klíč klienta k prokázání své identity při vyžádání tokenu. Postupujte podle kroků v části Přidání tajného klíče klienta a vytvořte tajný klíč klienta pro vaši aplikaci v Microsoft Entra ID.

Přiřazení rolí Azure pomocí portálu Azure

Přiřaďte k služebnímu objektu aplikace jednu z rolí služby Event Hubs v požadovaném oboru, jako je jmenný prostor služby Event Hubs, skupina prostředků nebo předplatné. Podrobný postup najdete v tématu Přiřazení rolí Azure pomocí webu Azure Portal.

Poté, co definujete roli a její rozsah, otestujte toto chování na vzorkech dostupných v této lokalitě GitHub. Chcete-li se dozvědět více o správě přístupu k Azure zdrojům pomocí Azure role-based access control (RBAC) a Azure portálu, podívejte se na tento článek.

Získání tokenů pomocí klientských knihoven

Poté, co zaregistrujete svou aplikaci a udělíte jí oprávnění odesílat nebo přijímat data v Azure Event Hubs, přidejte do aplikace kód pro autentizaci bezpečnostního principu a získání tokenu OAuth 2.0. K ověření a získání tokenu použijte některou z knihoven ověřování Microsoft Identity Platform nebo jinou opensourcovou knihovnu, která podporuje OpenID Connect 1.0. Vaše aplikace pak může přístupový token použít k autorizaci požadavku ve službě Azure Event Hubs.

Scénáře, kde je podporováno získání tokenů, najdete v části Scénáře GitHub úložiště knihovny Identity a ověřování Microsoftu (MSAL) pro .NET.

Samples

Projděte si následující související články: