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.
Eine Ereignisdomäne in Azure Event Grid stellt einen einzelnen Veröffentlichungsendpunkt für Tausende einzelner Themen im Zusammenhang mit derselben Anwendung bereit. Sie können sich eine Ereignisdomäne als Metathema vorstellen, das viele einzelne Themen enthält. Beim Veröffentlichen eines Ereignisses muss der Herausgeber das Zielthema in der Ereignisdomäne angeben, in der es veröffentlicht werden soll. Der Herausgeber kann ein Array oder einen Batch von Ereignissen senden, bei denen Ereignisse an verschiedene Themen in der Ereignisdomäne gesendet werden. Ausführliche Informationen finden Sie unter Veröffentlichen in einer Ereignisdomäne.
Ereignisdomänen geben Ihnen auch die Authentifizierungs- und Autorisierungskontrolle über jedes Thema, damit Sie Ihre Mandanten partitionieren können. Dieser Artikel beschreibt, wie Sie Ereignisdomänen verwenden, um den Fluss benutzerdefinierter Ereignisse für Ihre verschiedenen Geschäftsorganisationen, Kunden oder Anwendungen zu verwalten. Verwenden Sie Ereignisdomänen für die folgenden Aufgaben:
- Verwalten Sie mandantenfähige, ereignisgesteuerte Architekturen in großem Maßstab.
- Verwalten der Authentifizierung und Autorisierung.
- Partitionieren von Themen, ohne diese einzeln zu verwalten.
- Vermeiden Sie, einzeln an jeden Ihrer Topic-Endpunkte zu veröffentlichen.
Beispielanwendungsfall für eine Ereignisdomäne
Ereignisdomänen lassen sich am einfachsten an einem Beispiel veranschaulichen. Angenommen, Sie betreiben Contoso Construction Machinery, ein Unternehmen, das Traktoren, Bagger und anderes schweres Gerät herstellt. Als Teil des Geschäftsbetriebs übermitteln Sie Echtzeitinformationen zur Ausrüstungswartung, zur Systemintegrität und zu Vertragsaktualisierungen an Kunden. Alle diese Informationen werden an verschiedene Endpunkte weitergeleitet (z. B. an Ihre App, an Kundenendpunkte und andere auf Kundenseite eingerichtete Infrastrukturen).
Ereignisdomänen ermöglichen es Ihnen, Contoso Construction Machinery als eine einzige Event Grid-Entität zu modellieren. Jeder Ihrer Kunden wird als ein Thema in der Domäne dargestellt. Authentifizierung und Autorisierung werden mithilfe von Microsoft Entra ID verarbeitet. Jeder Ihrer Kunden kann sein Thema abonnieren und sich seine Ereignisse zustellen lassen. Verwalteter Zugriff über die Ereignisdomäne stellt sicher, dass die Kunden nur auf ihr jeweiliges Thema zugreifen können.
Außerdem erhalten Sie einen einzigen Endpunkt, in dem Sie alle Ihre Kundenereignisse veröffentlichen können. Event Grid sorgt dafür, dass jedes Thema nur die Ereignisse kennt, die sich auf den Mandanten beziehen.
Zugriffsverwaltung für Ereignisdomänen
Ereignisdomänen bieten eine differenzierte Autorisierungs- und Authentifizierungskontrolle über jedes Thema über Azure rollenbasierte Zugriffssteuerung (Azure RBAC). Verwenden Sie Azure RBAC-Rollen, um jeden Mandanten in Ihrer Anwendung auf die Themen zu beschränken, auf die Sie ihnen Zugriff gewähren möchten. Azure RBAC in Ereignisdomänen funktioniert auf dieselbe Weise wie die verwaltete Zugriffssteuerung im Rest von Event Grid und Azure. Verwenden Sie Azure RBAC, um benutzerdefinierte Rollendefinitionen in Ereignisdomänen zu erstellen und zu erzwingen.
Integrierte Rollen für Ereignisdomänen
Das Ereignisraster verfügt über zwei integrierte Rollendefinitionen, die Azure RBAC für die Arbeit mit Ereignisdomänen vereinfachen:
- EventGrid EventSubscription-Mitwirkender
- EventGrid EventSubscription Reader
Weisen Sie diese Rollen Benutzern zu, die Themen in Ihrer Ereignisdomäne abonnieren müssen. Beschränken Sie jede Rollenzuweisung auf das Thema, das der Benutzer abonnieren muss. Weitere Informationen zu diesen Rollen finden Sie unter Integrierte Rollen für Event Grid.
Abonnieren von Themen in einer Ereignisdomäne
Das Abonnieren von Ereignissen für ein Thema innerhalb einer Ereignisdomäne ist identisch mit dem Erstellen eines Ereignisabonnements für ein benutzerdefiniertes Thema oder dem Abonnieren eines Ereignisses von einem Azure-Dienst.
Wichtig
Ein Domänenthema ist eine automatisch verwaltete Ressource im Event Grid. Sie können ein Ereignisabonnement im Domänenbereich erstellen, ohne zuerst das Domänenthema zu erstellen. In diesem Fall erstellt Event Grid automatisch das Domänenthema in Ihrem Auftrag. Sie können das Domänenthema auch manuell erstellen. Dieses Verhalten reduziert die Anzahl der Ressourcen, die Sie verwalten müssen, wenn Sie mit einer großen Anzahl von Domänenthemen arbeiten. Wenn das letzte Abonnement eines Domänenthemas gelöscht wird, wird das Domänenthema ebenfalls gelöscht, unabhängig davon, ob das Domänenthema manuell erstellt oder automatisch erstellt wurde.
Abonnements auf Domänenebene
Ereignisdomänen unterstützen auch domänenbereichsbezogene Abonnements. Ein Ereignisabonnement im Bereich der Ereignisdomäne empfängt alle Ereignisse, die an die Ereignisdomäne gesendet werden, unabhängig davon, an welches Thema die Ereignisse gesendet werden. Abonnements für Domänenbereiche sind nützlich für Verwaltungs- und Überwachungsszenarien.
Veröffentlichen für eine Ereignisdomäne
Wenn Sie eine Ereignisdomäne erstellen, stellt Event Grid einen Veröffentlichungsendpunkt bereit, der dem Endpunkt für ein benutzerdefiniertes Thema ähnelt. Wenn Sie Ereignisse in einem beliebigen Thema in einer Ereignisdomäne veröffentlichen möchten, übertragen Sie die Ereignisse auf die gleiche Weise an den Endpunkt der Ereignisdomäne wie für ein benutzerdefiniertes Thema. Der einzige Unterschied besteht darin, dass Sie das Thema angeben müssen, an das das Ereignis übermittelt werden soll. Wenn Sie beispielsweise das folgende Array von Ereignissen veröffentlichen, wird das Ereignis mit "id": "1111" an das Thema foo und das Ereignis mit "id": "2222" an das Thema bar gesendet.
Hinweis
Ereignisdomänen unterstützen keine Übertragungsszenarien, in denen ein Ereignis an eine Ereignisdomäne gesendet wird und jedes Thema in der Domäne eine Kopie des Ereignisses empfängt. Beim Veröffentlichen von Ereignissen muss der Herausgeber das Zielthema in der Ereignisdomäne angeben, in der er veröffentlichen möchte. Um dieselbe Ereignisnutzlast an mehrere Topics in der Ereignisdomäne zu veröffentlichen, muss der Herausgeber die Ereignisnutzlast duplizieren, für jede Kopie den Topicnamen ändern und diese über den Endpunkt der Ereignisdomäne entweder einzeln oder im Batch in Event Grid veröffentlichen.
Geben Sie bei Verwendung des Cloudereignisschemas den Namen des Ereignisrasterthemas in der Ereignisdomäne als Wert der source Eigenschaft an. Im folgenden Beispiel wird die Eigenschaft source für das erste Ereignis auf foo und für das zweite Ereignis auf bar festgelegt.
Um ein anderes Feld zum Angeben des Zielthemas in der Ereignisdomäne zu verwenden, konfigurieren Sie die Eingabeschemazuordnung beim Erstellen der Ereignisdomäne. Verwenden Sie für die REST-API die Eigenschaft properties.inputSchemaMapping, um dieses Feld auf properties.topic zuzuordnen. Verwenden Sie EventGridJsonInputSchemaMappingfür das .NET SDK . Andere SDKs unterstützen auch die Schemazuordnung.
[{
"source": "foo",
"id": "1111",
"type": "maintenanceRequested",
"subject": "myapp/vehicles/diggers",
"time": "2018-10-30T21:03:07+00:00",
"data": {
"make": "Contoso",
"model": "Small Digger"
},
"specversion": "1.0"
},
{
"source": "bar",
"id": "2222",
"type": "maintenanceCompleted",
"subject": "myapp/vehicles/tractors",
"time": "2018-10-30T21:04:12+00:00",
"data": {
"make": "Contoso",
"model": "Big Tractor"
},
"specversion": "1.0"
}]
Ereignisdomänen übernehmen die Veröffentlichung von Themen für Sie. Statt Ereignisse für jedes Thema einzeln zu veröffentlichen, veröffentlichen Sie alle Ereignisse an den Endpunkt der Ereignisdomäne, und Das Ereignisraster leitet jedes Ereignis an das richtige Thema weiter.
Preise für Ereignisdomänen
Ereignisdomänen verwenden dieselben Betriebspreise wie andere Features in Event Grid. Vorgänge funktionieren in Ereignisdomänen genauso wie in benutzerdefinierten Themen:
- Jeder Ausgang eines Ereignisses zu einer Ereignisdomäne ist ein Vorgang.
- Jeder Übermittlungsversuch für ein Ereignis ist ein Vorgang.
Zugehöriger Inhalt
Weitere Informationen zum Einrichten von Ereignisdomänen, zum Erstellen von Themen, zum Erstellen von Ereignisabonnements und zum Veröffentlichen von Ereignissen finden Sie unter Verwalten von Ereignisdomänen.