Řešení potíží s ověřováním předplatného služby Azure Event Grid
Pokud se během vytváření odběru událostí zobrazí chybová zpráva, například The attempt to validate the provided endpoint https://your-endpoint-here failed. For more details, visit https://aka.ms/esvalidation
, značí, že při ověřování došlo k selhání metody handshake. Pokud chcete tuto chybu vyřešit, ověřte následující aspekty:
- Pomocí nástroje curl nebo podobného nástroje proveďte http POST na adresu URL webhooku s ukázkovým textem požadavku SubscriptionValidationEvent .
- Pokud váš webhook implementuje synchronní ověřovací mechanismus handshake, ověřte, že se ověřovací kód vrátí jako součást odpovědi.
- Pokud váš webhook implementuje mechanismus handshake asynchronního ověřování, ověřte, že http POST vrací 200 OK.
- Pokud se váš webhook vrací
403 (Forbidden)
v odpovědi, zkontrolujte, jestli je váš webhook za bránou Aplikace Azure lication Gateway nebo firewallem webových aplikací. Pokud ano, musíte tato pravidla brány firewall zakázat a znovu provést http POST:- 920300 (Žádost o chybějící hlavičku přijetí)
- 942430 (Omezená detekce anomálií znaků SQL (args): # of special characters exceeded (12))
- 920230 (bylo zjištěno kódování více adres URL)
- 942130 (útok prostřednictvím injektáže SQL: Zjištěna tautologie SQL.)
- 931130 (Možný útok na zahrnutí vzdálených souborů (RFI) = odkaz na mimodoménu/odkaz)
Důležité
Podrobné informace o ověření koncového bodu pro webhooky najdete v tématu Doručování událostí webhooku.
Tady je ukázkový json SubscriptionValidationEvent , který můžete odeslat pomocí nástroje, jako je CURL:
[
{
"id": "2d1781af-3a4c-4d7c-bd0c-e34b19da4e66",
"topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"subject": "",
"data": {
"validationCode": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
},
"eventType": "Microsoft.EventGrid.SubscriptionValidationEvent",
"eventTime": "2018-01-25T22:12:19.4556811Z",
"metadataVersion": "1",
"dataVersion": "1"
}
]
Tady je ukázková úspěšná odpověď:
{
"validationResponse": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
}
Ověření odběru událostí Event Gridu pomocí curl
Tady je ukázkový příkaz Curl pro ověření odběru webhooku události Event Gridu:
curl -X POST -d '[{"id": "2d1781af-3a4c-4d7c-bd0c-e34b19da4e66","topic": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","subject": "","data": {"validationCode": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"},"eventType": "Microsoft.EventGrid.SubscriptionValidationEvent","eventTime": "2018-01-25T22:12:19.4556811Z", "metadataVersion": "1","dataVersion": "1"}]' -H 'Content-Type: application/json' https://{your-webhook-url.com}
Další informace o ověřování událostí Event Gridu pro webhooky najdete v tématu Ověření koncového bodu pomocí událostí Event Gridu.
Ověření odběru cloudových událostí
Pro ověřování s cloudovými událostmi použijte metodu HTTP OPTIONS . Další informace o ověřování cloudových událostí pro webhooky najdete v tématu Ověření koncového bodu s využitím cloudových událostí.
Související obsah
Pokud potřebujete další pomoc, publikujte svůj problém na fóru Stack Overflow nebo otevřete lístek podpory.