Autorisieren des Zugriffs auf Event Hubs-Ressourcen mithilfe von Microsoft Entra ID

Azure Event Hubs unterstützt die Verwendung von Microsoft Entra ID zum Autorisieren von Anforderungen an Event Hubs-Ressourcen. Mit Microsoft Entra ID können Sie die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) von Azure zum Erteilen von Berechtigungen für einen Sicherheitsprinzipal verwenden. Bei diesem kann es sich um einen Benutzer oder um einen Anwendungsdienstprinzipal handeln. Weitere Informationen zu Rollen und Rollenzuweisungen finden Sie unter Grundlegendes zu den verschiedenen Rollen.

Übersicht

Wenn ein Sicherheitsprinzipal (ein Benutzer oder eine Anwendung) versucht, auf eine Event Hubs-Ressource zuzugreifen, muss die Anforderung autorisiert werden. Mit Microsoft Entra ID ist der Zugriff auf eine Ressource ein zweistufiger Prozess.

  1. Zunächst wird die Identität des Sicherheitsprinzipals authentifiziert, und ein OAuth 2.0-Token wird zurückgegeben. Der Ressourcenname für die Anforderung eines Tokens ist https://eventhubs.azure.net/, der für alle Clouds/Mandanten gleich ist. Für Kafka-Clients ist die Ressource zum Anfordern eines Tokens https://<namespace>.servicebus.windows.net.
  2. Anschließend wird das Token als Teil einer Anforderung an den Event Hubs-Dienst übergeben, um den Zugriff auf die angegebene Ressource zu autorisieren.

Für den Authentifizierungsschritt ist es erforderlich, dass eine Anwendungsanforderung zur Laufzeit ein OAuth 2.0-Zugriffstoken enthält. Wenn eine Anwendung in einer Azure-Entität, z.B. einem virtuellen Azure-Computer, einer VM-Skalierungsgruppe oder einer Azure Functions-App, ausgeführt wird, kann der Zugriff auf die Ressourcen über eine verwaltete Identität erfolgen. Informationen dazu, wie Sie Anforderungen einer verwalteten Identität an den Event Hubs-Dienst authentifizieren können, finden Sie im Artikel zum Authentifizieren des Zugriffs auf Azure Event Hubs-Ressourcen mit Microsoft Entra ID und verwalteten Identitäten für Azure-Ressourcen.

Der Autorisierungsschritt erfordert, dass dem Sicherheitsprinzipal mindestens eine Azure-Rolle zugewiesen wird. Azure Event Hubs stellt Azure-Rollen bereit, die Berechtigungen für Event Hubs-Ressourcen enthalten. Die möglichen Berechtigungen eines Sicherheitsprinzipals sind durch die Rollen vorgegeben, die dem Prinzipal zugewiesen sind. Weitere Informationen zu Azure-Rollen finden Sie unter In Azure integrierte Rollen für Azure Event Hubs.

Native Anwendungen und Webanwendungen, die Anforderungen an Event Hubs senden, können die Autorisierung ebenfalls mit Microsoft Entra ID durchführen. Informationen zum Anfordern eines Zugriffstokens und seiner Verwendung zum Autorisieren von Anforderungen für Event Hubs-Ressourcen finden Sie im Artikel zum Authentifizieren des Zugriffs auf Azure Event Hubs mit Microsoft Entra ID über eine Anwendung.

Zuweisen von Azure-Rollen für Zugriffsrechte

Microsoft Entra autorisiert Zugriffsrechte für geschützte Ressourcen über die rollenbasierte Zugriffssteuerung in Azure (Azure Role-Based Access Control, Azure RBAC). Azure Event Hubs definiert eine Reihe von integrierten Azure-Rollen, die allgemeine Berechtigungssätze für den Zugriff auf Event Hub-Daten umfassen. Sie können auch benutzerdefinierte Rollen für den Zugriff auf die Daten definieren.

Wenn einem Microsoft Entra-Sicherheitsprinzipal eine Azure-Rolle zugewiesen wird, gewährt Azure diesem Sicherheitsprinzipal Zugriff auf diese Ressourcen. Der Zugriff kann sich auf den Bereich des Abonnements, der Ressourcengruppe, des Event Hubs-Namespace oder jeder darin vorhandenen Ressource beziehen. Bei einem Microsoft Entra-Sicherheitsprinzipal kann es sich um einen Benutzer bzw. eine Benutzerin, eine Gruppe, einen Anwendungsdienstprinzipal oder eine verwaltete Identität für Azure-Ressourcen handeln.

In Azure integrierte Rollen für Azure Event Hubs

Azure stellt die folgenden integrierten Azure-Rollen zum Autorisieren des Zugriffs auf Event Hubs-Daten mithilfe von Microsoft Entra ID und OAuth bereit:

Rolle BESCHREIBUNG
Azure Event Hubs-Datenbesitzer Mit dieser Rolle gewähren Sie Vollzugriff auf Event Hubs-Ressourcen.
Azure Event Hubs-Datensender Mit dieser Rolle gewähren Sie Sendezugriff auf Event Hubs-Ressourcen.
Azure Event Hubs-Datenempfänger Mit dieser Rolle gewähren Sie Verbrauchs-/Sendezugriff auf Event Hubs-Ressourcen.

Informationen zu den integrierten Rollen für die Schemaregistrierung finden Sie unter Schemaregistrierungsrollen.

Ressourcenumfang

Bevor Sie einem Sicherheitsprinzipal eine Azure-Rolle zuweisen, legen Sie den Zugriffsbereich fest, den der Sicherheitsprinzipal haben soll. Es hat sich als am besten bewährt, stets nur den kleinstmöglichen Umfang an Zugriffsrechten zu gewähren.

In der folgenden Liste werden die Ebenen beschrieben, auf denen Sie den Zugriff auf Event Hubs-Ressourcen einschränken können, beginnend mit dem kleinstmöglichen Bereich:

  • Consumergruppe: Bei diesem Umfang gilt die Rollenzuweisung nur für diese Entität. Derzeit unterstützt das Azure-Portal keine Zuweisung einer Azure-Rolle zu einem Sicherheitsprinzipal auf dieser Ebene.
  • Event Hub: Die Rollenzuweisung gilt für Event Hubs und deren Consumergruppen.
  • Namespace: Die Rollenzuweisung umfasst die gesamte Topologie von Event Hubs unter dem Namespace sowie die ihm zugeordnete Consumergruppe.
  • Ressourcengruppe: Die Rollenzuweisung gilt für alle Event Hubs-Ressourcen unter der Ressourcengruppe.
  • Abonnement: Die Rollenzuweisung gilt für alle Event Hubs-Ressourcen in allen Ressourcengruppen im Abonnement.

Hinweis

Weitere Informationen dazu, wie integrierte Rollen definiert sind, finden Sie unter Grundlegendes zu Rollendefinitionen. Informationen zum Erstellen von benutzerdefinierten Azure-Rollen finden Sie unter Benutzerdefinierte Azure-Rollen.

Beispiele

Weitere Informationen finden Sie in den folgenden verwandten Artikeln: