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.
Dieser Artikel enthält Anleitungen zum Veröffentlichen von Ereignissen in benutzerdefinierten Azure Event Grid-Themen mithilfe von Zugriffstasten. Sie erfahren mehr über das erforderliche Endpunktformat, Authentifizierungsheader, Ereignisschema und das Senden von Beispielereignissen.
Die Vereinbarung zum Servicelevel (SLA) gilt nur für Postings, die dem erwarteten Format entsprechen.
Hinweis
Microsoft Entra-Authentifizierung bietet eine bessere Authentifizierungsunterstützung als Authentifizierung mit Zugriffsschlüsseln oder SAS-Token (Shared Access Signature). Bei Microsoft Entra-Authentifizierung wird die Identität anhand des Microsoft Entra-Identitätsanbieters überprüft. Als Entwickler müssen Sie keine Schlüssel in Ihrem Code verwalten, wenn Sie Microsoft Entra-Authentifizierung verwenden. Sie profitieren auch von allen Sicherheitsfeatures, die in die Microsoft Identity Platform integriert sind, z. B. bedingter Zugriff, die Ihnen helfen können, die Sicherheitsposition Ihrer Anwendung zu verbessern. Weitere Informationen finden Sie unter Authentifizieren von Veröffentlichungsclients mit Microsoft Entra ID.
Endpunkt
Um Ereignisse in einem benutzerdefinierten Thema zu veröffentlichen, senden Sie eine HTTP POST-Anforderung im folgenden URI-Format: https://<topic-endpoint>?api-version=2018-01-01
https://exampletopic.westus2-1.eventgrid.azure.net/api/events?api-version=2018-01-01 ist beispielsweise ein gültiger URI. Um den Endpunkt für ein benutzerdefiniertes Thema abzurufen, verwenden Sie das Azure-Portal, die Azure CLI oder Azure PowerShell.
Sie finden den Endpunkt des Themas auf der Registerkarte Übersicht der Seite Event Grid Topic im Azure-Portal.
Header
Schließen Sie einen Headerwert namens aeg-sas-key in die Anforderung ein, der einen Schlüssel für die Authentifizierung enthält. Ein gültiger Headerwert ist beispielsweise aeg-sas-key: xxxxxxxxxxxxxxxxxxxxxxx. Um den Schlüssel für ein benutzerdefiniertes Thema mit der Azure CLI abzurufen, verwenden Sie diesen Befehl:
Um die Zugriffstaste für das benutzerdefinierte Thema abzurufen, wählen Sie die Registerkarte Zugriffstasten auf der Seite Ereignisrasterthema im Azure-Portal aus.
Ereignisdatenschema für benutzerdefinierte Themen
Für benutzerdefinierte Themen müssen die Daten der obersten Ebene müssen die gleichen Felder enthalten wie die über Standardressourcen definierten Ereignisse. Eine dieser Eigenschaften ist eine data-Eigenschaft, die eindeutige Eigenschaften für das benutzerdefinierte Thema enthält. Als Ereignisherausgeber legen Sie die Eigenschaften für dieses Datenobjekt fest. Das folgende Schema wird verwendet:
[
{
"id": string,
"eventType": string,
"subject": string,
"eventTime": string-in-date-time-format,
"data":{
object-unique-to-each-publisher
},
"dataVersion": string
}
]
Eine Beschreibung dieser Eigenschaften finden Sie unter Azure Event Grid-Ereignisschema. Wenn ein Client Ereignisse an ein Ereignisrasterthema sendet, kann das Array eine Gesamtgröße von bis zu 1 MB aufweisen. Die maximal zulässige Größe für ein Ereignis beträgt ebenfalls 1 MB. Ereignisse, die größer als 64 KB sind, werden in Schritten von 64 KB in Rechnung gestellt. Wenn ein Client Ereignisse in einem Batch empfängt, beträgt die maximal zulässige Anzahl von Ereignissen 5.000 pro Batch.
Ein gültiges Ereignisdatenschema lautet beispielsweise wie folgt:
[{
"id": "1807",
"eventType": "recordInserted",
"subject": "myapp/vehicles/motorcycles",
"eventTime": "2017-08-10T21:03:07+00:00",
"data": {
"make": "Ducati",
"model": "Monster"
},
"dataVersion": "1.0"
}]
Senden eines Beispielereignisses
In diesem Abschnitt wird gezeigt, wie Sie ein Beispielereignis an das benutzerdefinierte Thema senden.
Starten Sie im Azure-Portal Cloud Shell.
Führen Sie in der Cloud Shell die Befehle aus der Azure PowerShell- oder Azure CLI in der Bash- oder PowerShell-Sitzung aus.
Antwort
Nachdem Sie das Posten an den Themenendpunkt durchgeführt haben, erhalten Sie eine Antwort. Die Antwort ist ein HTTP-Standardantwortcode. Einige häufige Antworten lauten:
| Ergebnis | Antwort |
|---|---|
| Erfolg | 200 – OK |
| Fehlerhaftes Format der Ereignisdaten | 400 – Ungültige Anforderung |
| Ungültiger Zugriffsschlüssel | 401 – Nicht autorisiert |
| Falscher Endpunkt | 404 – Nicht gefunden |
| Array oder Ereignis überschreitet Größengrenzwerte | 413 Nutzlast zu groß |
Für Fehler hat der Nachrichtentext das folgende Format:
{
"error": {
"code": "<HTTP status code>",
"message": "<description>",
"details": [{
"code": "<HTTP status code>",
"message": "<description>"
}]
}
}
Zugehöriger Inhalt
- Überwachen der Zustellung von Ereignisrasternachrichten: Erfahren Sie, wie Sie Ereignislieferungen nachverfolgen und behandeln.
- Ereignisrastersicherheit und -Authentifizierung: Verstehen, wie Sie Ihre Ereignisse mit Authentifizierungsschlüsseln sichern.
- Event Grid-Abonnementschema: Schrittweise Anleitung zum Erstellen eines Event Grid-Abonnements.