Share via


Aangepaste onderwerpen publiceren in Azure Event Grid met behulp van toegangssleutels

In dit artikel wordt beschreven hoe u een gebeurtenis plaatst in een aangepast onderwerp met behulp van een toegangssleutel. De indeling van de post- en gebeurtenisgegevens wordt weergegeven. De SLA (Service Level Agreement) is alleen van toepassing op berichten die overeenkomen met de verwachte indeling.

Notitie

Microsoft Entra-verificatie biedt een superieure ondersteuning voor verificatie dan wordt aangeboden door toegangssleutel- of SAS-tokenverificatie (Shared Access Signature). Met Microsoft Entra-verificatie wordt de identiteit gevalideerd op basis van De id-provider van Microsoft Entra. Als ontwikkelaar hoeft u geen sleutels in uw code te verwerken als u Microsoft Entra-verificatie gebruikt. U profiteert ook van alle beveiligingsfuncties die zijn ingebouwd in het Microsoft Identity Platform, zoals voorwaardelijke toegang, waarmee u de beveiligingshouding van uw toepassing kunt verbeteren. Zie Publicerende clients verifiëren met behulp van Microsoft Entra ID voor meer informatie.

Eindpunt

Wanneer u http POST naar een aangepast onderwerp verzendt, gebruikt u de URI-indeling: https://<topic-endpoint>?api-version=2018-01-01 Een geldige URI is bijvoorbeeld: https://exampletopic.westus2-1.eventgrid.azure.net/api/events?api-version=2018-01-01. Als u het eindpunt voor een aangepast onderwerp wilt ophalen met behulp van Azure CLI, gebruikt u:

U vindt het eindpunt van het onderwerp op het tabblad Overzicht van de pagina Event Grid-onderwerp in Azure Portal.

Schermopname van de Event Grid-onderwerppagina in Azure Portal met het onderwerpeindpunt gemarkeerd.

Neem in de aanvraag een headerwaarde aeg-sas-key op die een sleutel voor verificatie bevat. Een geldige headerwaarde is aeg-sas-key: xxxxxxxxxxxxxxxxxxxxxxxbijvoorbeeld . Als u de sleutel voor een aangepast onderwerp wilt ophalen met behulp van Azure CLI, gebruikt u:

Als u de toegangssleutel voor het aangepaste onderwerp wilt ophalen, selecteert u het tabblad Toegangssleutels op de pagina Event Grid-onderwerp in Azure Portal.

Schermopname van het tabblad Toegangssleutels van de Event Grid-onderwerppagina in Azure Portal.

Gebeurtenisgegevens

Voor aangepaste onderwerpen bevatten de gegevens op het hoogste niveau dezelfde velden als standaardgebeurtenissen die door resources zijn gedefinieerd. Een van deze eigenschappen is een data eigenschap die eigenschappen bevat die uniek zijn voor het aangepaste onderwerp. Als gebeurtenisuitgever bepaalt u eigenschappen voor dat gegevensobject. Dit is het schema:

[
  {
    "id": string,    
    "eventType": string,
    "subject": string,
    "eventTime": string-in-date-time-format,
    "data":{
      object-unique-to-each-publisher
    },
    "dataVersion": string
  }
]

Zie het Gebeurtenisschema van Azure Event Grid voor een beschrijving van deze eigenschappen. Wanneer een client gebeurtenissen naar een Event Grid-onderwerp verzendt, kan de matrix een totale grootte van maximaal 1 MB hebben. De maximale toegestane grootte voor een gebeurtenis is ook 1 MB. Gebeurtenissen van meer dan 64 kB worden in rekening gebracht in stappen van 64 kB. Wanneer een client gebeurtenissen in een batch ontvangt, is het maximaal toegestane aantal gebeurtenissen 5000 per batch.

Een geldig gebeurtenisgegevensschema is bijvoorbeeld:

[{
  "id": "1807",
  "eventType": "recordInserted",
  "subject": "myapp/vehicles/motorcycles",
  "eventTime": "2017-08-10T21:03:07+00:00",
  "data": {
    "make": "Ducati",
    "model": "Monster"
  },
  "dataVersion": "1.0"
}]

De voorbeeldgebeurtenis verzenden

In deze sectie ziet u hoe u een voorbeeldgebeurtenis naar het aangepaste onderwerp verzendt.

  1. Start Cloud Shell in Azure Portal.

  2. Voer in Cloud Shell de opdrachten uit vanuit Azure PowerShell of Azure CLI in de Bash- of PowerShell-sessie.

    Schermopname van Cloud Shell in Azure Portal.

Respons

Nadat u het onderwerpeindpunt hebt gepost, ontvangt u een antwoord. Het antwoord is een standaard HTTP-antwoordcode. Enkele veelvoorkomende antwoorden zijn:

Resultaat Respons
Geslaagd 200 OK
Gebeurtenisgegevens hebben een onjuiste indeling 400 Ongeldige aanvraag
Ongeldige toegangssleutel 401 Onbevoegd
Onjuist eindpunt 404 Niet gevonden
Matrix of gebeurtenis overschrijdt de groottelimieten 413 Nettolading te groot

Voor fouten heeft de hoofdtekst van het bericht de volgende indeling:

{
    "error": {
        "code": "<HTTP status code>",
        "message": "<description>",
        "details": [{
            "code": "<HTTP status code>",
            "message": "<description>"
    }]
  }
}