Eseménykezelő konfigurálása az Azure Web PubSub szolgáltatásban
Az eseménykezelő kezeli a bejövő ügyféleseményeket. Az eseménykezelők regisztrálva vannak és konfigurálva vannak a szolgáltatásban az Azure Portalon vagy az Azure CLI-ben. Ügyfélesemény aktiválásakor a szolgáltatás elküldheti az eseményt a megfelelő eseménykezelőnek. A Web PubSub szolgáltatás mostantól kiszolgálóoldaliként támogatja az eseménykezelőt, amely elérhetővé teszi a szolgáltatás nyilvánosan elérhető végpontját, amely meghívható az esemény aktiválásakor. Más szóval webhookként működik.
A Web PubSub szolgáltatás ügyféleseményeket biztosít a konfigurált felsőbb rétegbeli webhooknak a CloudEvents HTTP protokollal, az Azure Web PubSub eseménykezelő CloudEvents-bővítményével.
Eseménykezelő beállításai
Az ügyfél mindig egy központhoz csatlakozik, és több eseménykezelő beállítást is konfigurálhat a központhoz. Az eseménykezelő beállításainak sorrendje számít, az előbbi pedig a magasabb prioritással rendelkezik. Amikor egy ügyfél csatlakozik, és egy esemény aktiválódik, a Web PubSub a konfigurált eseménykezelőkön halad végig a prioritási sorrendben, és az első egyező nyer. Az eseménykezelő konfigurálásakor adja meg a következő tulajdonságokat:
Tulajdonság neve | Leírás |
---|---|
URL-sablon | Meghatározza a Web PubSub sablont a felsőbb rétegbeli webhook URL-címének kiértékeléséhez. |
Felhasználói események | Meghatározza azokat a felhasználói eseményeket, amelyekkel az aktuális eseménykezelő beállítás törődik. |
Rendszeresemények | Meghatározza azokat a rendszereseményeket, amelyekkel az aktuális eseménykezelő beállítás törődik. |
Hitelesítés | A Web PubSub szolgáltatás és a felsőbb rétegbeli kiszolgáló közötti hitelesítési módszert határozza meg. |
esemény
Az események közé tartoznak a felhasználói események és a rendszeresemények. A rendszeresemények előre definiált események, amelyek az ügyfél élettartama alatt aktiválódnak. A felhasználói események akkor aktiválódnak, amikor az ügyfél adatokat küld, a felhasználói esemény neve ügyfélprotokollok használatával testre szabható, itt található a részletes magyarázat.
Eseménytípus | Támogatott értékek |
---|---|
Rendszeresemények | connect , connected és disconnected |
Felhasználói események | message , vagy egyéni eseménynév az ügyfélprotokollokat követve |
URL-sablon
Az URL-sablon számos paramétert támogat, amelyek kiértékelhetők futásidőben. Ezzel a funkcióval egyszerűen irányíthat különböző központokat vagy eseményeket különböző felsőbb rétegbeli kiszolgálókra egyetlen beállítással. A KeyVault referenciaszintaxisa is támogatott, így az adatok biztonságosan tárolhatók az Azure Key Vaultban.
Megjegyzés: Az URL-tartománynév nem tartalmazhat paraméterszintaxist, http://{hub}.com
például nem érvényes URL-sablon.
Támogatott paraméterek | Szintaxis | Leírás | Példák |
---|---|---|---|
Központi paraméter | {hub} |
Az érték az a központ, amelyhez az ügyfél csatlakozik. | Amikor egy ügyfél csatlakozik, client/hubs/chat egy URL-sablon http://host.com/api/{hub} kiértékeli, http://host.com/api/chat mert ehhez az ügyfélhez a központ az chat . |
Eseményparaméter | {event} |
Az aktivált esemény értéke. event itt találja az értékeket. A visszaélések elleni védelmi kérelmek eseményértéke az validate itt leírtak szerint történik. |
Ha van egy eseményhez konfigurált URL-sablon http://host.com/api/{hub}/{event} , amikor egy ügyfél csatlakozikclient/hubs/chat , a Web PubSub post kérést kezdeményez a kiértékelt URL-címrehttp://host.com/api/chat/connect , amikor az ügyfél csatlakozik, mivel ebben az ügyféleseményben a központ és chat az eseménykezelő beállítást kiváltó esemény.connect connect |
KeyVault referenciaparaméter | {@Microsoft.KeyVault(SecretUri=<secretUri>)} |
A Titkos kóduriknak a tárolóban lévő titkos kódok teljes adatsík URI-jának kell lenniük, opcionálisan beleértve például https://myvault.vault.azure.net/secrets/mysecret/ egy verziót vagy https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931 . A KeyVault-referenciák használatakor a Web PubSub szolgáltatás és a KeyVault szolgáltatás közötti hitelesítést is konfigurálnia kell. A részletes lépéseket itt találja. |
@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/) |
Hitelesítés a szolgáltatás és a webhook között
Ezen módszerek bármelyikével hitelesítheti magát a szolgáltatás és a webhook között.
- Névtelen mód
- Az egyszerű hitelesítést
?code=<code>
a konfigurált Webhook URL-cím biztosítja lekérdezési paraméterként. - Microsoft Entra-engedélyezés. További információ: Felügyelt identitás használata ügyféleseményekben.
Felsőbb rétegbeli és érvényesítési
Amikor az eseménykezelő webhookot az Azure Portalon vagy a PARANCSSOR-on keresztül állítja be, a szolgáltatás a CloudEvents Abuse Protectiont követi a felsőbb rétegbeli webhook ellenőrzéséhez. Ez a mechanizmus ellenőrzi az összes regisztrált upstream webhook URL-címet. A WebHook-Request-Origin
kérés fejléce a szolgáltatástartomány nevére xxx.webpubsub.azure.com
van állítva, és arra számít, hogy a válasznak tartalmaznia kell WebHook-Allowed-Origin
ezt a tartománynevet vagy *
.
Az ellenőrzés során a {event}
paraméter a következőre validate
lesz feloldva: . Ha például az URL-címet http://host.com/api/{event}
szeretné beállítani, a szolgáltatás megpróbálja BEÁLLÍTANI a kérést http://host.com/api/validate
. A konfiguráció csak akkor állítható be sikeresen, ha a válasz érvényes.
Egyelőre nem támogatjuk a WebHook-Request-Rate és a WebHook-Request-Callback függvényt.
Eseménykezelő konfigurálása
Konfigurálás az Azure Portalon keresztül
Hozzáadhat egy eseménykezelőt egy új központhoz, vagy szerkesztheti a meglévő központot.
Eseménykezelő konfigurálása új központban:
Nyissa meg az Azure Web PubSub szolgáltatáslapját az Azure Portalon.
Válassza a menü Beállítások pontját.
A Hozzáadás gombra kattintva létrehozhat egy központot, és konfigurálhatja a kiszolgálóoldali webhook URL-címét. Megjegyzés: Ha eseménykezelőt szeretne hozzáadni egy meglévő központhoz, jelölje ki a központot, és válassza a Szerkesztés lehetőséget.
Adja meg a központ nevét.
Válassza a Hozzáadás lehetőséget a Páros kezelők konfigurálása csoportban.
Az eseménykezelő lapon konfigurálja a következő mezőket: 1. Írja be a kiszolgáló webhook URL-címét az URL-sablon mezőbe. 1. Válassza ki azokat a rendszereseményeket , amelyekre elő szeretne fizetni. 1. Válassza ki azokat a felhasználói eseményeket , amelyekre elő szeretne fizetni. 1. Válassza a hitelesítési módszert a felsőbb rétegbeli kérések hitelesítéséhez. 1. Válassza a Megerősítés elemet.
Válassza a Központi beállítások konfigurálása lap tetején található Mentés lehetőséget.
Konfigurálás az Azure CLI-vel
Az Eseménykezelő beállításainak konfigurálásához használja az Azure CLI az webpubsub hub csoportparancsait.
Parancsok | Leírás |
---|---|
create |
Hubbeállítások létrehozása a WebPubSub Service-hez. |
delete |
A WebPubSub Service központi beállításainak törlése. |
list |
A WebPubSub Service összes központi beállításának listázása. |
show |
A WebPubSub Service központi beállításainak megjelenítése. |
update |
Frissítse a WebPubSub Service központbeállításait. |
Íme egy példa két webhook URL-cím létrehozására az MyWebPubSub
erőforrásközponthozMyHub
:
az webpubsub hub create -n "MyWebPubSub" -g "MyResourceGroup" --hub-name "MyHub" --event-handler url-template="http://host.com" user-event-pattern="*" --event-handler url-template="http://host2.com" system-event="connected" system-event="disconnected" auth-type="ManagedIdentity" auth-resource="uri://myUri"
Következő lépések
Használja ezeket az erőforrásokat a saját alkalmazás létrehozásához: