Поделиться через


Устранение неполадок при проверках подписок

Если при создании подписки на событие отображается сообщение об ошибке The attempt to validate the provided endpoint https://your-endpoint-here failed. For more details, visit https://aka.ms/esvalidation, это означает, что при подтверждении проверки произошла ошибка. Чтобы устранить эту ошибку, проверьте следующие аспекты:

  • Выполните HTTP POST в URL-адрес веб-перехватчика с примером текста запроса SubscriptionValidationEvent с помощью curl или аналогичного средства.
  • Если веб-перехватчик реализует механизм подтверждения синхронной проверки, убедитесь, что в ответе возвращается ValidationCode.
  • Если веб-перехватчик реализует механизм подтверждения асинхронной проверки, убедитесь, что HTTP POST возвращает ответ 200 ОК.
  • Если веб-перехватчик возвращает ответ 403 (Forbidden) (Запрещено), проверьте, не защищен ли этот веб-перехватчик Шлюзом приложений Azure или Брандмауэром веб-приложений. Если это так, необходимо отключить эти правила брандмауэра и снова выполнить HTTP POST:
    • 920300 (В запросе отсутствует заголовок Accept.)
    • 942430 (Ограничение обнаружения аномальных знаков SQL (аргументы): превышено количество специальных знаков (12).)
    • 920230 (Обнаружено несколько типов кодирования URL-адресов.)
    • 942130 (Атака путем внедрения кода SQL. Обнаружена тавтология SQL.)
    • 931130 (Возможная атака с включением удаленного файла (RFI): ссылка вне домена.)

Внимание

Подробные сведения о проверке конечных точек для веб-перехватчиков см. в разделе Доставка событий веб-перехватчика.

Ниже приведен пример JSON SubscriptionValidationEvent , который можно отправить с помощью такого средства, как 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"
  }
]

Вот пример успешного ответа.

{
  "validationResponse": "aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e"
}

Проверка подписки на события Сетки событий с помощью Curl

Ниже приведен пример использования Curl для проверки подписки веб-перехватчика на события Сетки событий.

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}

Чтобы узнать больше о проверке событий Сетки событий для веб-перехватчиков, ознакомьтесь с разделом Проверка конечной точки с событиями сетки событий.

Проверка подписки на облачные события

Используйте метод HTTP OPTIONS для проверки облачных событий. Чтобы узнать больше о проверке облачных событий для веб-перехватчиков, ознакомьтесь с разделом о проверке конечных точек с облачными событиями.

Устранение неполадок при проверках подписок

Следующие шаги

Если вам нужна дополнительная помощь, опубликуйте свой вопрос на форуме Stack Overflow или отправьте запрос в службу поддержки.