Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Microsoft Azure bietet eine integrierte Verwaltung der Zugriffssteuerung für Ressourcen und Anwendungen, basierend auf Microsoft Entra ID. Ein wichtiger Vorteil der Verwendung der Microsoft Entra-ID mit Azure Event Hubs besteht darin, dass Sie keine Anmeldeinformationen im Code speichern müssen. Fordern Sie stattdessen ein OAuth 2.0-Zugriffstoken von der Microsoft Identity Platform an. Der Ressourcenname zum Anfordern eines Tokens lautet https://eventhubs.azure.net/. Dieser Wert ist für alle Clouds/Mandanten gleich. (Für Kafka-Clients lautet die Ressource zum Anfordern eines Tokens https://<namespace>.servicebus.windows.net.) Microsoft Entra authentifiziert den Sicherheitsprinzipal, der die Anwendung ausführt. Dabei kann es sich um einen Benutzer, um eine Gruppe, um einen Dienstprinzipal oder um eine verwaltete Identität handeln. Wenn die Authentifizierung erfolgreich ist, gibt die Microsoft Entra-ID ein Zugriffstoken an die Anwendung zurück, das dann das Token zum Autorisieren von Anforderungen an Azure Event Hubs-Ressourcen verwenden kann.
Wenn einem Microsoft Entra-Sicherheitsprinzipal eine Azure-Rolle zugewiesen ist, gewährt Azure diesem Sicherheitsprinzipal Zugriff auf diese Ressourcen. Der Zugriff kann auf das Abonnement, die Ressourcengruppe, den Event Hubs-Namespace oder eine beliebige Ressource unter diesem Bereich festgelegt werden. Ein Microsoft Entra-Sicherheitsprinzipal kann einem Benutzer, einer Gruppe, einem Anwendungsdienstprinzipal oder einer verwalteten Identität für Azure-Ressourcen Rollen zuweisen.
Note
Eine Rollendefinition ist eine Sammlung von Berechtigungen. Die rollenbasierte Zugriffssteuerung (Azure RBAC) erzwingt diese Berechtigungen durch Rollenzuweisung. Eine Rollenzuweisung umfasst drei Elemente: Sicherheitsprinzipal, Rollendefinition und Bereich. Weitere Informationen finden Sie unter Grundlegendes zu den verschiedenen Rollen.
Integrierte Rollen für Azure Event Hubs
Azure bietet diese integrierten Rollen, um den Zugriff auf Event Hubs-Daten mithilfe der Microsoft Entra-ID und OAuth zu autorisieren:
- Azure Event Hubs Dateneigentümer: Verwenden Sie diese Rolle, um vollständigen Zugriff auf Event Hubs-Ressourcen zu erhalten.
- Azure Event Hubs-Datensender: Ein Sicherheitsprinzipal, der dieser Rolle zugewiesen ist, kann Ereignisse an einen bestimmten Event Hub oder an alle Event Hubs in einem Namespace senden.
- Azure Event Hubs-Datenempfänger: Ein Sicherheitsprinzipal, der dieser Rolle zugewiesen ist, kann Ereignisse von einen bestimmten Event Hub oder von allen Event Hubs in einem Namespace empfangen.
Informationen zu den integrierten Rollen für die Schemaregistrierung finden Sie unter Schemaregistrierungsrollen.
Important
Die Vorschauversion unterstützt das Hinzufügen von Event Hubs-Datenzugriffsberechtigungen zur Rolle "Besitzer" oder "Mitwirkender". Diese Berechtigungen werden jedoch nicht mehr berücksichtigt. Wenn Sie die Rolle "Besitzer" oder "Mitwirkender" verwenden, wechseln Sie zur Rolle "Azure Event Hubs-Datenbesitzer".
Authentifizieren über eine Anwendung
Ein wichtiger Vorteil der Verwendung von Microsoft Entra ID mit Event Hubs besteht darin, dass Sie Ihre Anmeldeinformationen nicht in Ihrem Code speichern müssen. Fordern Sie stattdessen ein OAuth 2.0-Zugriffstoken von der Microsoft Identity Platform an. Microsoft Entra übernimmt die Authentifizierung des Sicherheitsprinzipals (Benutzer, Gruppe oder Dienstprinzipal), der die Anwendung ausführt. Wenn die Authentifizierung erfolgreich ist, gibt Microsoft Entra ID das Zugriffstoken an die Anwendung zurück, und die Anwendung kann dann das Zugriffstoken zum Autorisieren von Anforderungen an Azure Event Hubs verwenden.
In den folgenden Abschnitten wird erläutert, wie Sie eine systemeigene Anwendung oder Webanwendung für die Authentifizierung mit Microsoft Identity Platform 2.0 konfigurieren. Weitere Informationen zu Microsoft Identity Platform 2.0 finden Sie unter Übersicht über Microsoft Identity Platform (v2.0).
Eine Übersicht über den Datenfluss für OAuth 2.0-Codeberechtigungen finden Sie unter Autorisieren des Zugriffs auf Microsoft Entra-Webanwendungen mit dem Flow zum Erteilen des OAuth 2.0-Codes.
Registrieren Ihrer Anwendung mit Microsoft Entra ID
Der erste Schritt zur Verwendung der Microsoft Entra-ID zum Autorisieren von Event Hubs-Ressourcen besteht darin, eine Clientanwendung mit einem Microsoft Entra-Mandanten im Azure-Portal zu registrieren. Führen Sie die Schritte unter Schnellstart: Registrieren einer Anwendung bei Microsoft Identity Platform aus, um eine Anwendung in Microsoft Entra ID zu registrieren, die Ihre Anwendung darstellt, die versucht, auf Event Hubs-Ressourcen zuzugreifen.
Wenn Sie Ihre Clientanwendung registrieren, stellen Sie Informationen zu Ihrer Anwendung bereit. Microsoft Entra-ID stellt eine Client-ID bereit, die auch als Anwendungs-ID bezeichnet wird, um die Anwendung der Microsoft Entra-Runtime zuzuordnen. Weitere Informationen zur Client-ID finden Sie unter Anwendungs- und Dienstprinzipalobjekte in Microsoft Entra ID.
Note
Wenn Sie die Anwendung als native Anwendung registrieren, können Sie jeden gültigen URI als Umleitungs-URI angeben. Bei systemeigenen Anwendungen muss dieser Wert keine echte URL sein. Bei Webanwendungen muss der Umleitungs-URI ein gültiger URI sein, da er die URL angibt, in der Token bereitgestellt werden.
Nachdem Sie Ihre Anwendung registriert haben, wird die Anwendungs-ID (Client-ID) unter Einstellungen angezeigt:
Erstellen eines geheimen Clientschlüssels für die Authentifizierung
Die Anwendung erfordert einen geheimen Clientschlüssel, um seine Identität beim Anfordern eines Tokens zu beweisen. Führen Sie die Schritte unter Geheimen Clientschlüssel hinzufügen aus, um einen geheimen Clientschlüssel für Ihre App in Microsoft Entra ID zu erstellen.
Zuweisen von Azure-Rollen über das Azure-Portal
Weisen Sie dem Dienstprinzipal der Anwendung im gewünschten Bereich eine der Event Hubs-Rollen zu, z. B. den Event Hubs-Namespace, die Ressourcengruppe oder das Abonnement. Ausführliche Informationen finden Sie unter Zuweisen von Azure-Rollen über das Azure-Portal.
Testen Sie dieses Verhalten nach dem Definieren der Rolle und des Bereichs mit Beispielen , die an diesem GitHub-Speicherort verfügbar sind. Weitere Informationen zum Verwalten des Zugriffs auf Azure-Ressourcen mithilfe der rollenbasierten Zugriffssteuerung (RBAC) und des Azure-Portals finden Sie in diesem Artikel.
Verwenden von Clientbibliotheken zum Abrufen von Token
Nachdem Sie Ihre Anwendung registriert und Berechtigungen zum Senden oder Empfangen von Daten in Azure Event Hubs erteilt haben, fügen Sie Ihrer Anwendung Code hinzu, um einen Sicherheitsprinzipal zu authentifizieren und ein OAuth 2.0-Token zu erwerben. Um das Token zu authentifizieren und abzurufen, verwenden Sie eine der Authentifizierungsbibliotheken der Microsoft Identity Platform oder eine andere Open Source-Bibliothek, die OpenID Connect 1.0 unterstützt. Ihre Anwendung kann dann mit dem Zugriffstoken eine Anforderung an Azure Event Hubs autorisieren.
Szenarien, für die das Abrufen von Token unterstützt wird, finden Sie im GitHub-Repository Microsoft Authentication Library (MSAL) für .NET im Abschnitt Szenarien.
Samples
- RBAC-Beispiele mit dem .NET-Legacypaket „Microsoft.Azure.EventHubs“ Wir arbeiten daran, eine neue Version dieses Beispiels mithilfe des neuesten Azure.Messaging.EventHubs-Pakets zu erstellen. Weitere Informationen dazu finden Sie in der bereits konvertierten verwalteten Identität.
-
RBAC-Beispiel mit dem Java-Legacypaket „com.microsoft.azure.eventhubs“ Verwenden Sie das Migrationshandbuch, um dieses Beispiel für die Nutzung des neuen Pakets (
com.azure.messaging.eventhubs) zu migrieren. Weitere Informationen zur Verwendung des neuen Pakets finden Sie in diesen Beispielen.
Verwandte Inhalte
Weitere Informationen zu Azure RBAC finden Sie unter "Was ist die rollenbasierte Azure-Zugriffssteuerung (Azure RBAC)".
Informationen zum Zuweisen und Verwalten von Azure-Rollenzuweisungen mit Azure PowerShell, Azure CLI oder der REST-API finden Sie in diesen Artikeln.
- Hinzufügen oder Entfernen von Azure-Rollenzuweisungen mithilfe von Azure PowerShell
- Hinzufügen oder Entfernen von Azure-Rollenzuweisungen mithilfe der Azure-Befehlszeilenschnittstelle
- Hinzufügen oder Entfernen von Azure-Rollenzuweisungen mithilfe der REST-API
- Hinzufügen von Azure-Rollenzuweisungen mithilfe von Azure Resource Manager-Vorlagen
Weitere Informationen finden Sie in den folgenden verwandten Artikeln:
- Authentifizieren einer verwalteten Identität mit Microsoft Entra ID für den Zugriff auf Event Hubs-Ressourcen
- Authentifizieren von Anforderungen an Azure Event Hubs mithilfe von Shared Access Signature
- Autorisieren des Zugriffs auf Event Hubs-Ressourcen mithilfe von Microsoft Entra ID
- Autorisieren des Zugriffs auf Event Hubs-Ressourcen mit freigegebenen Zugriffssignaturen