Sdílet prostřednictvím


Ř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í.

Pokud potřebujete další pomoc, publikujte svůj problém na fóru Stack Overflow nebo otevřete lístek podpory.