Események közzététele egyéni Azure Event Grid-témakörökben hozzáférési kulcsokkal

Ez a cikk azt ismerteti, hogyan tehet közzé eseményt egy egyéni témakörbe egy hozzáférési kulcs használatával. A bejegyzés és az esemény adatainak formátumát jeleníti meg. A szolgáltatásiszint-szerződés (SLA) csak a várt formátumnak megfelelő bejegyzésekre vonatkozik.

Megjegyzés:

A Microsoft Entra-hitelesítés a hozzáférési kulcs vagy a közös hozzáférésű jogosultságkód (SAS) jogkivonat-hitelesítés által kínáltnál magasabb szintű hitelesítési támogatást nyújt. A Microsoft Entra-hitelesítéssel az identitás a Microsoft Entra identitásszolgáltatón lesz érvényesítve. Fejlesztőként nem kell kezelnie a kód kulcsait, ha Microsoft Entra-hitelesítést használ. Emellett a Microsoft Identitásplatform beépített összes biztonsági funkció, például a feltételes hozzáférés előnyeit is élvezheti, amelyek segíthetnek az alkalmazás biztonsági helyzetének javításában. További információ: Közzétételi ügyfelek hitelesítése a Microsoft Entra-azonosítóval.

Végpont

Ha a HTTP POST-et egyéni témakörbe küldi, használja az URI formátumot: https://<topic-endpoint>?api-version=2018-01-01. Egy érvényes URI például a következő: https://exampletopic.westus2-1.eventgrid.azure.net/api/events?api-version=2018-01-01. Ha az Azure CLI-vel szeretné lekérni egy egyéni témakör végpontot, használja a következőt:

az eventgrid topic show --name <topic-name> -g <topic-resource-group> --query "endpoint"

Ha egy egyéni témakör végpontjának lekéréséhez az Azure PowerShellt használja, használja a következőket:

(Get-AzEventGridTopic -ResourceGroupName <topic-resource-group> -Name <topic-name>).Endpoint

A kérelemben adjon meg egy fejlécértéket aeg-sas-key , amely tartalmazza a hitelesítés kulcsát. Az érvényes fejlécérték például a következő aeg-sas-key: xxxxxxxxxxxxxxxxxxxxxxx: . Ha az Azure CLI használatával szeretné lekérni egy egyéni témakör kulcsát, használja a következőt:

az eventgrid topic key list --name <topic-name> -g <topic-resource-group> --query "key1"

Ha a PowerShell használatával szeretné lekérni egy egyéni témakör kulcsát, használja a következőt:

(Get-AzEventGridTopicKey -ResourceGroupName <topic-resource-group> -Name <topic-name>).Key1

Eseményadatok

Egyéni témakörök esetén a legfelső szintű adatok ugyanazokat a mezőket tartalmazzák, mint a standard erőforrás által definiált események. Ezen tulajdonságok egyike az data egyéni témakörhöz egyedi tulajdonságokat tartalmazó tulajdonság. Esemény közzétevőként ön határozza meg az adatobjektum tulajdonságait. A séma a következő:

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

Ezeknek a tulajdonságoknak a leírását az Azure Event Grid eseményséma tartalmazza. Események Event Grid-témakörbe való közzétételekor a tömb teljes mérete legfeljebb 1 MB lehet. Az esemény maximális megengedett mérete szintén 1 MB. A 64 KB-nál nagyobb eseményeket 64 KB-os növekményekben számítjuk fel. Ha eseményeket fogad egy kötegben, az események maximális száma kötegenként 5000.

Egy érvényes eseményadat-séma például a következő:

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

Response

Miután közzétette a témakörvégpontot, választ kap. A válasz egy szabványos HTTP-válaszkód. Néhány gyakori válasz:

Eredmény Response
Sikeres művelet 200 OK
Az eseményadatok formátuma helytelen 400 Hibás kérés
Érvénytelen hozzáférési kulcs 401 Unauthorized
Helytelen végpont 404 Nem található
A tömb vagy esemény túllépi a méretkorlátokat 413 Túl nagy hasznos adat

Hibák esetén az üzenettörzs formátuma a következő:

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

További lépések