Sdílet prostřednictvím


Ověření aplikace pomocí ID Microsoft Entra pro přístup k prostředkům služby 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 už v kódu nemusíte ukládat svoje přihlašovací údaje. Místo toho můžete požádat o přístupový token OAuth 2.0 z platformy Microsoft Identity Platform. Název prostředku pro vyžádání tokenu je https://eventhubs.azure.net/a je stejný pro všechny cloudy a tenanty (pro klienty Kafka je https://<namespace>.servicebus.windows.netprostředek, který žádá o token). Microsoft Entra ověřuje objekt zabezpečení (uživatel, skupina, instanční objekt nebo spravovaná identita) spuštěnou aplikaci. Pokud ověřování proběhne úspěšně, vrátí Microsoft Entra ID přístupový token k aplikaci a aplikace pak může použít přístupový token k autorizaci požadavku na prostředky Azure Event Hubs.

Když je role přiřazena k objektu zabezpečení Microsoft Entra, Azure udělí přístup k těmto prostředkům pro tento objekt zabezpečení. Přístup může být vymezen na úroveň předplatného, skupiny prostředků, oboru názvů služby Event Hubs nebo jakéhokoli prostředku v rámci tohoto předplatného. Zabezpečení Microsoft Entra může přiřadit role uživateli, skupině, instančnímu objektu aplikace nebo spravované identitě pro prostředky Azure.

Poznámka:

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

Předdefinované role pro Azure Event Hubs

Azure poskytuje následující předdefinované role Azure 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: Objekt zabezpečení 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 oboru názvů.
  • Příjemce dat služby Azure Event Hubs: 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 ze všech center událostí v oboru názvů.

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

Důležité

Naše 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. Oprávnění k přístupu k datům pro roli Vlastník a Přispěvatel se však už nedotknou. 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 to, že vaše přihlašovací údaje už nemusí být uložené ve vašem kódu. Místo toho můžete požádat 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 ukazují, 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 v tenantovi Microsoft Entra

Prvním krokem při použití ID Microsoft Entra k autorizaci prostředků služby Event Hubs je registrace klientské aplikace v tenantovi Microsoft Entra z webu Azure Portal. 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 pak poskytuje ID klienta (označované také jako ID aplikace), které můžete použít k přidružení aplikace k modulu runtime Microsoft Entra. Další informace o ID klienta najdete v tématu Objekty aplikace a instanční objekty v Microsoft Entra ID.

Poznámka:

Pokud aplikaci zaregistrujete jako nativní aplikaci, můžete zadat libovolný platný identifikátor URI pro identifikátor URI přesměrování. U nativních aplikací nemusí být tato hodnota skutečnou adresou URL. U webových aplikací musí být identifikátor URI přesměrování platným identifikátorem URI, protože určuje adresu URL, ke které jsou tokeny k dispozici.

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

Snímek obrazovky zobrazující stránku registrace aplikace se zvýrazněným ID aplikace

Vytvoření tajného klíče klienta

Aplikace potřebuje tajný klíč klienta, aby při žádosti o token mohla prokázat svou identitu. 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řazování rolí Azure s využitím webu Azure Portal

Přiřaďte k instančnímu objektu aplikace jednu z rolí služby Event Hubs v požadovaném oboru (obor názvů služby Event Hubs, skupina prostředků, předplatné). Podrobný postup najdete v tématu Přiřazování rolí Azure s využitím webu Azure Portal.

Jakmile definujete roli a její obor, můžete toto chování otestovat pomocí ukázek v tomto umístění GitHubu. Další informace o správě přístupu k prostředkům Azure pomocí řízení přístupu na základě role (RBAC) Azure a webu Azure Portal najdete v tomto článku.

Klientské knihovny pro získání tokenů

Jakmile aplikaci zaregistrujete a udělíte jí oprávnění k odesílání a přijímání dat ve službě Azure Event Hubs, můžete do své aplikace přidat kód pro ověření objektu zabezpečení a získání tokenu OAuth 2.0. K ověření a získání tokenu můžete použít některou z knihoven ověřování platformy Microsoft Identity Platform nebo jinou opensourcovou knihovnu, která podporuje OpenID nebo 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, ve kterých se podporují získávání tokenů, najdete v části Scénáře knihovny Microsoft Authentication Library (MSAL) pro úložiště .NET GitHub.

Ukázky

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